`
liyixing1
  • 浏览: 961984 次
  • 性别: Icon_minigender_1
  • 来自: 江西上饶
社区版块
存档分类
最新评论

一个简单例子和多个bean文件

阅读更多
package com.liyixing.spring.service;

import com.liyixing.spring.model.Account;

public interface IAccount {
//删除用户
public void deleteAccount(Account account);
}

定义实现

package com.liyixing.spring.service.imp;

import com.liyixing.spring.model.Account;
import com.liyixing.spring.service.IAccount;

public class AccountService implements IAccount {

public void deleteAccount(Account account) {
System.out.println("删除用户");
}

}


在classpath创建文件beans.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
<bean id="accountService" class="com.liyixing.spring.service.imp.AccountService">
</bean>
</beans>

测试
package com.liyixing.spring.test;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

import com.liyixing.spring.model.Account;
import com.liyixing.spring.service.IAccount;

public class Test {

/**
* @param args
*/
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext(
new String[] { "beans.xml" });
IAccount accountService = (IAccount) context.getBean("accountService");

accountService.deleteAccount(new Account());
}

}
这里的Test使用了ClassPathXmlApplicationContext,这个类会从当前的classpath中寻砸坏哦beans.xml,new String[] { "beans.xml" }这里是个数组,可以指定多个spring配置文件。这里已经介绍了一种多个bean文件的使用
Spring团队倾向于上述做法,因为这样各个配置并不会查觉到它们 与其他配置文件的组合。


另外一种方法是使用一个或多个的<import/>元素 来从另外一个或多个文件加载bean定义。所有的<import/>元素必 须在<bean/>元素之前完成bean定义的导入。 让我们看个例子:

<beans>

    <import resource="services.xml"/>
    <import resource="resources/messageSource.xml"/>
    <import resource="/resources/themeSource.xml"/>

    <bean id="bean1" class="..."/>
    <bean id="bean2" class="..."/>

</beans>
根据Spring XML配置文件的 Schema(或DTD),被导入文件必须是完全有效的XML bean定义文件,且根节点必须为 <beans/> 元素


分享到:
评论

相关推荐

    Spring实例化Bean顺序

    在Spring框架中,Bean的实例化顺序是一个关键概念,它涉及到如何管理和协调多个Bean的创建与依赖关系。这里,我们主要探讨的是Spring如何通过其IoC(Inversion of Control)容器来实例化Bean,并理解其背后的逻辑。 ...

    Bean开发实例之三实体Bean开发实例

    - 一个实体Bean实例可以对应数据库中的一行记录,允许多个客户端应用以共享方式访问。 - 它们能够使用持久化机制,比如序列化或对象/关系映射(O/R Mapping),来确保数据的持久性。 - 实体Bean具备生命周期管理能力...

    读取文件数据并解析成bean实体类

    总的来说,从文件读取数据并解析成Bean实体类涉及多个层次的技术,包括基础的文件I/O、数据解析、对象映射以及高级的工具类设计。开发者需要熟悉这些技术,并能够灵活运用,以实现高效、稳定的文件数据处理。在项目...

    Spring Bean重复执行两次(实例被构造两次)问题分析

    7. **XML配置中的&lt;bean&gt;标签误用**:在XML配置中,如果不小心在同一个配置文件中声明了同一个Bean两次,或者在多个配置文件中重复声明,也会导致Bean被实例化两次。 解决这个问题的关键在于深入理解Spring的Bean...

    java bean实例

    Java Bean是Java编程语言中的一种...提供的压缩包可能包含了一个具备数据库操作功能的Java Bean实例,可以通过配置文件和依赖注入来管理和使用。如果需要进一步了解或使用这个Bean,可以按照提供的联系方式寻求帮助。

    使用jsp和java bean来构建一个网上书店

    此外,提供的文档"使用JSP和Java Bean来构建一个网上书店.doc"可能包含了详细的步骤和示例代码,"说明.txt"可能是关于项目实施的指南或注意事项,而".url"文件可能是相关资源链接,例如教程或示例代码库,这些都可以...

    jsp+bean+servlet 简单实例

    在这个简单的实例中,我们将深入理解这三个组件如何协同工作来构建一个Web应用程序。** **1. JSP(JavaServer Pages)**: JSP是一种动态网页技术,它允许开发者在HTML页面中嵌入Java代码,从而实现动态内容的生成...

    xmlbean入门实例

    - 在本实例中,`xmlTest`可能包含一个简单的XML文件和XSD文件,以及相关的Java源代码或已编译的类。 - XML文件(如`data.xml`):定义XML数据。 - XSD文件(如`data.xsd`):定义XML结构。 - Java源代码:使用...

    Spring 实例化Bean的三种方式

    在Spring配置文件中,我们可以定义一个Bean作为实例工厂,然后指定该Bean的一个方法作为实例工厂方法。Spring将调用这个方法来创建实际需要的Bean实例。这种方式对于那些需要复杂逻辑来决定如何创建Bean的场景非常...

    EJB3 示例有状态和无状态会话bean

    每个客户端请求都会被映射到一个特定的SSB实例,允许bean在多个方法调用之间存储和管理数据。在EJB3中,实现SSB通常通过在接口上添加`@Stateful`注解完成。 ### 3. 无状态会话Bean (Stateless Session Bean, SLSB) ...

    SpingIOC注入实例化bean

    - **单例(Singleton)**:容器中只有一个实例,所有请求都返回同一个bean。 - **原型(Prototype)**:每次请求都会创建一个新的bean实例。 - **请求(Request)**:在Web应用中,每个HTTP请求创建一个bean实例。 - *...

    一个Struts1多文件上传实例(附Form中传List示例)

    总之,这个实例提供了关于Struts1中文件上传和复杂表单数据处理的实战经验,对于学习Java Web开发和Struts1框架的开发者来说,这是一个非常有价值的参考。通过实际操作和调试,可以加深对Struts1处理文件上传和复杂...

    jspbean实例.rar

    【标题】"jspbean实例.rar"是一个压缩包文件,它主要包含了关于JavaBean技术在JSP(JavaServer Pages)中的实际应用案例。JavaBean是一种Java编程中的组件模型,它允许开发人员创建可重用的代码段,这些代码段可以在...

    java源码包---java 源码 大量 实例

    6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...

    jsp+mysql+bean实现登录的小例子

    在这个例子中,Bean可能包含一个或多个属性(如商品ID、名称等)以及对应的getter和setter方法。Bean还可能包含操作数据库的方法,如连接数据库、执行SQL语句等。通过在JSP中使用`jsp:useBean`标签,可以将Bean实例...

    spring bean 属性总结

    这使得开发人员能够在一个文件中定义和配置多个Bean,从而简化了应用程序的配置过程。 #### `&lt;bean&gt;` 元素 `&lt;bean&gt;`元素用于告诉Spring容器一个类及其配置方式。它包含了以下关键属性: - **class属性**:表示...

    spring学习----工厂Bean

    当Spring容器遇到一个被标记为FactoryBean的Bean定义时,它不会直接实例化这个Bean,而是调用`getObject()`方法来获取实际需要的对象。 在实际应用中,工厂Bean有多种用途。例如: 1. **复杂初始化逻辑**:如果一...

    spring IOC反射装载bean

    在Spring-Demo中,我们可能会看到一个实际的例子,包括`beans.xml`配置文件,一个或多个Java类,以及如何通过Spring容器启动并管理这些Bean。这个Demo有助于理解Spring如何通过反射机制加载和管理Bean,以及如何通过...

    spring bean的生命周期

    - **Singleton**:Spring容器中只会存在一个Bean实例,所有对Bean的请求都会返回同一个实例。 - **Prototype**:每次请求都会创建一个新的Bean实例。 - **Request**:在Web应用中,每个HTTP请求都会创建一个Bean...

    使用Betwixt将XML转为JAVA Bean(内有JAR包)

    这里,我们创建了一个`BeanReader`,注册了`Person`和`Address`类,然后解析XML输入流,生成相应的Java Bean实例。 在实际应用中,`TestBetwixt`可能包含具体的测试代码,用于验证上述转换过程是否正确。测试通常会...

Global site tag (gtag.js) - Google Analytics