`
xiaocao000
  • 浏览: 227498 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Spring Bean 配置说明

阅读更多
<?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.0.xsd">
	<description>Spring Quick Start</description>

	<bean id="messageSource"
		class="org.springframework.context.support.ResourceBundleMessageSource">
		<property name="basenames">
			<list>
				<value>messages</value>
			</list>
		</property>
	</bean>

	<bean id="TheAction" class="com.xiaocao000.demo1.LowerAction">
		<property name="message">
			<value>HeLLo : </value>
		</property>
	</bean>

	<bean id="loginAction" class="com.xiaocao000.demo1.LoginAction" />
	<bean id="listener" class="com.xiaocao000.demo1.ActionListener" />
</beans>


===============================================================
<beans>

Spring配置文件的根元素,包含一个或多个bean元素。



default-autowire属性:默认的bean自动装配模式。可选5种模式。



  • no:不使用自动装配。Bean的引用必须通过ref元素定义。
  • byName:通过属性名字进行自动装配。
  • byType:如果BeanFactory中正好有一个同属性类型一样的bean,就自动装配这个属性。如果有多于一个这样的bean,就抛出一个致命异常,它指出你可能不能对那个bean使用byType的自动装配。如果没有匹配的bean,则什么都不会发生,属性不会被设置。如果这是你不想要的情况(什么都不发生),通过设置dependency-check="objects"属性值来指定在这种情况下应该抛出错误。
  • constructor:这个同byType类似,不过是应用于构造函数的参数。如果在BeanFactory中不是恰好有一个bean与构造函数参数相同类型,则一个致命的错误会产生。
  • autodetect: 通过对bean 检查类的内部来选择constructor或byType。如果找到一个缺省的构造函数,那么就会应用byType。


default-dependency-check属性:默认的依赖检查模式。可选四种。
  • none :不进行依赖检查。没有指定值的bean属性仅仅是没有设值。
  • Simple:对基本类型和集合(除了合作者外,比如其他的bean,所有东西)进行依赖检查。
  • Object:对合作者进行依赖检查。
  • all :对合作者,基本类型和集合都进行依赖检查。



default-lazy-init属性:默认延迟加载。True 或False 。用于告诉Spring容器一个类以及它是如何配置的。

class属性:Java Bean 类名。

id属性:Java Bean在BeanFactory中的唯一标识,代码中通过BeanFactory获取JavaBean实例时需以此作为索引名称。

name属性:同上,如果给bean增加别名,可以通过name属性指定一个或多个id。

singleton属性:指定此Java Bean是否采用单例(Singleton)模式,如果设为“true”,则在BeanFactory作用范围内,只维护此Java Bean的一个实例,代码通过BeanFactory获得此Java Bean实例的引用。反之,如果设为“false”,则通过BeanFactory获取此Java Bean实例时,BeanFactory每次都将创建一个新的实例返回。

abstract属性:设定ApplicationContext是否对bean进行预先的初始化。

parent属性:定义一个模板。

autowire属性:bean自动装配模式。可选5种模式。
  • no:不使用自动装配。Bean的引用必须通过ref元素定义。
  • byName:通过属性名字进行自动装配。
  • byType:如果BeanFactory中正好有一个同属性类型一样的bean,就自动装配这个属性。如果有多于一个这样的bean,就抛出一个致命异常,它指出你可能不能对那个bean使用byType的自动装配。如果没有匹配的bean,则什么都不会发生,属性不会被设置。如果这是你不想要的情况(什么都不发生),通过设置dependency-check="objects"属性值来指定在这种情况下应该抛出错误。
  • constructor:这个同byType类似,不过是应用于构造函数的参数。如果在BeanFactory中不是恰好有一个bean与构造函数参数相同类型,则一个致命的错误会产生。
  • autodetect: 通过对bean 检查类的内部来选择constructor或byType。如果找到一个缺省的构造函数,那么就会应用byType。


dependency-check属性:依赖检查模式。可选四种。
  • none :不进行依赖检查。没有指定值的bean属性仅仅是没有设值。
  • Simple:对基本类型和集合(除了合作者外,比如其他的bean,所有东西)进行依赖检查。
  • Object:对合作者进行依赖检查。
  • all :对合作者,基本类型和集合都进行依赖检查。



lazy-init属性:延迟加载。True 或False 。

init-method属性:初始化方法,此方法将在BeanFactory创建JavaBean实例之后,在向应用层返回引用之前执行。一般用于一些资源的初始化工作。

destroy-method属性:销毁方法。此方法将在BeanFactory销毁的时候执行,一般用于资源释放。

factory-bean属性:通过实例工厂方法创建bean,class属性必须为空,factory-bean属性必须指定一个bean的名字,这个bean一定要在当前的bean工厂或者父bean工厂中,并包含工厂方法。而工厂方法本身通过factory-method属性设置。

factory-method属性:设定工厂类的工厂方法。

depends-on属性:Bean依赖关系。一般情况下无需设定。Spring会根据情况组织各个依赖关系的构建工作。只有某些特殊情况下,如JavaBean中的某些静态变量需要进行初始化(这是一种BadSmell,应该在设计上应该避免)。通过depends-on指定其依赖关系可保证在此Bean加载之前,首先对depends-on所指定的资源进行加载。


======================================================
Spring 中 Bean 配置说明

<property> 用于设置一个属性。

name属性:属性的名称。

value属性: 指定bean的属性值。BeanFactory将自动根据Java Bean对应的属性类型加以匹配。如果需要将属性值设定为null,必须使用<null/>节点。

ref属性: 指定了属性对BeanFactory中其他Bean的引用关系。

bean属性:指定了属性对BeanFactory中其他Bean的引用关系。

local属性:指定了属性对BeanFactory中其他Bean的引用关系。(仅在本地(同一个)xml文件里寻找bean。

parent属性:指定了属性对BeanFactory中其他Bean模板的引用关系。

<list> 指定bean的属性类型为List的属性值。
<map> 指定bean的属性类型为List的属性值。
<set> 指定bean的属性类型为List的属性值。
<props> 指定bean的属性类型为Properties的属性值。
<prop>key属性:指定Properties的键
<idref> 用来设置属性值为容器中其他bean的id 或name。
<null> 指定一个空值。
<constructor-arg> 使用构造方法注入,指定构造方法的参数。

index属性:设置参数的序号。
ref属性:同ref
type属性:参数类型。
value属性:参数的值。

<lookup-method> lookup方法注入
bean属性:要注入的bean名
name属性:要注入的方法名称

<replaced-method> 用来把已存在的方法实现替换为其他的实现。

name属性:要替换的方法名

replacer属性:替换者类, 实现org.springframework.beans.factory.support.MethodReplacer接口)

<arg-type> 方法返回的类型


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lpdb2001/archive/2008/04/24/2324417.aspx
分享到:
评论

相关推荐

    Spring的Bean配置说明

    ### Spring的Bean配置详解 #### 一、Spring配置文件根元素`&lt;beans&gt;`解析 - **功能概述**:`&lt;beans&gt;`是Spring配置文件的根元素,用来包含一个或多个`&lt;bean&gt;`元素,用于定义Spring容器管理的各种Bean。 #### 二、`...

    spring的Bean配置说明

    以下是对Spring Bean配置的详细解释: 1. `&lt;beans&gt;` 根元素:这是Spring配置文件的起点,它包含了所有的Bean定义。Spring容器会解析这个文件并创建相应的Bean实例。 2. `&lt;bean&gt;` 元素:这是Spring配置中最常见的...

    普元eos-springbean开发

    - **SpringBean配置**:针对报销单维护的具体需求,配置相应的SpringBean,实现业务逻辑处理。 #### SpringBean配置详解 - **应用级配置**:主要涉及整个应用级别的配置信息,如数据源、事务管理等。 - **构件包...

    Spring XML配置的12个技巧

    以下是对Spring XML配置的12个技巧的详细说明: 1. 避免使用自动装配:Spring提供了自动装配功能,通过匹配bean属性或构造函数参数进行依赖注入。尽管能简化配置,但可能会牺牲可读性和可维护性,因此不推荐在大型...

    spring1.2的配置-jdbc

    ### Spring 1.2 的 JDBC 配置详解 在 Spring 框架 1.2 版本中,对 JDBC 的支持已经相当成熟,并且提供了非常便捷的方式来管理和配置数据库访问。下面将根据提供的 XML 配置文件来详细介绍 Spring 1.2 中如何配置 ...

    hibernate+spring配置详细解析

    ### Hibernate与Spring集成配置详解 #### 一、概述 在现代Java企业级应用开发中,Hibernate作为一款流行的ORM(对象关系映射)框架,能够极大简化数据库操作;而Spring作为一个全面的企业级应用开发框架,提供了...

    spring定时器配置说明

    本说明文档将详细解析两种常见的触发器:SimpleTrigger和CronTrigger的配置与使用。 首先,SimpleTrigger适用于那些需要简单定时任务的场景。例如,如果你想让某个任务在特定时间启动,并按设定的间隔重复执行,...

    spring事务配置的五种方式

    接下来,我们将详细介绍五种具体的事务配置方式,并以第一种方式进行示例说明。 ##### 第一种方式:每个Bean都有一个代理 这种方式是最直接的事务配置方法之一。它为每个业务逻辑Bean创建一个代理对象,该代理对象...

    JavaSpring2:通过Setter注入配置Spring Bean

    本篇文章将详细讲解如何通过Setter注入来配置Spring Bean,同时也会简要介绍构造函数注入。 ### Setter注入 setter注入是Spring中最常用的依赖注入方式。在JavaSpring2中,我们可以创建一个类,比如`UserService`...

    spring配置文件说明.doc

    ### Spring配置文件详解 在Java开发领域中,Spring框架凭借其强大的功能与灵活性深受开发者喜爱。其中,`applicationContext.xml`作为Spring的核心配置文件之一,起着至关重要的作用。本文将详细解读`...

    spring 配置文件简单说明

    12. `parent`: 指定Bean继承自哪个父Bean配置,继承的Bean会继承父Bean的属性和配置。 这些属性和元素组合起来,使得Spring配置文件能够灵活地配置和管理应用程序的组件,实现IoC(控制反转)和DI(依赖注入),...

    struct和spring整合的配置

    以下是对"struct和spring整合的配置"的详细说明: 一、整合目的 整合Spring和Struts的主要目的是为了实现更好的业务逻辑管理、依赖注入以及提高代码的可测试性。通过Spring管理Struts中的Action类,可以避免在...

    Spring在MyEclipse中的配置

    `applicationContext.xml`是Spring框架的核心配置文件,它定义了应用程序中Bean之间的依赖关系。通过MyEclipse可以快速生成此文件并进行必要的配置: - 选择文件存放路径,默认为`WebRoot/WEB-INF`目录。 - 设置...

    spring配置文件说明[借鉴].pdf

    总结起来,Spring的`applicationContext.xml`配置文件通过定义bean及其相互依赖关系,实现了对整个应用的组件管理和控制流程的搭建。这种方式让开发者能够灵活地配置和管理应用的各个部分,同时降低了组件之间的耦合...

    spring ibatis 配置(包括事务管理)

    以下是关于"spring ibatis 配置(包括事务管理)"的详细说明: 1. **引入依赖**:首先,我们需要在项目中添加Spring和iBatis的相关依赖。通常,这会在Maven或Gradle的配置文件中完成,确保引入了正确的版本。 2. *...

    详细说明spring事务配置的5种方式

    本文将详细介绍Spring事务配置的五种方式,帮助你深入理解如何在Spring应用中管理事务。 1. **基于XML的声明式事务管理** 第一种方式是在每个Bean上使用代理来实现事务管理。首先,配置`DataSource`,通常是`...

    Spring事物配置的五种模式

    本文将详细介绍五种常见的Spring事务配置模式,并结合具体的配置示例进行说明。 #### 一、每个Bean都有一个代理 这种方式是最直接也是最简单的配置方法。它通过为每个需要事务支持的Bean创建一个代理来实现。这种...

    Spring 实例化Bean的三种方式

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

    Spring定时器配置详解

    Spring 定时器配置详解 Spring 定时器是一种基于 Quartz 的任务调度框架,它提供了一个灵活的方式来管理和控制任务的执行。下面是 Spring 定时器配置的详细解释。 配置 CronTriggerBean CronTriggerBean 是 ...

Global site tag (gtag.js) - Google Analytics