<bean name="xxx" class="指定的bean类" scope="singleton"></bean>

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

 

name属性:同id大致相同,如果给bean增加别名,可以通过name属性指定一个或多个id。class属性:Java Bean 类名。

Scpoe属性:指明bean的作用域,常用的有:singleton,prototype。

singleton:在每个Spring IoC容器中一个bean定义只有一个对象实例。默认情况下会在容器启动时初始化bean,但我们可以指定Bean节点的lazy-init=“true”来延迟初始化bean,这时候,只有第一次获取bean会才初始化bean。如:

 

 

<bean id="xxx" class="xxxx" lazy-init="true"/>

 

如果想对所有bean都应用延迟初始化,可以在根节点beans设置default-lazy-init=“true“,如下:

 

<beans default-lazy-init="true“ ...>

 

prototype: 每次从容器获取bean都是新的对象。

 

<property name="xxx" value="hello,你好"></property>
<property name="xxx" ref="xxx"/>

property:用于设置一个属性


注意:name的值要和你注入的bean中的成员属性的名称相同。

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

value:指定bean的属性值


<constructor-arg type="java.lang.String" value="hp电脑"/>
<constructor-arg index="0"  value="hp电脑"/>

constructor-arg:使用构造方法注入,指定构造方法的参数。

 

注意:相应的bean中必须含有制定使用的构造器否则会出现异常


index属性:设置参数的序号,注:索引从0开始

type属性:参数类型。

ref属性:同上ref。

value属性:参数的值。

 

 

<bean id="xxx" class="指定的类" scope="prototype" depends-on="xxx">

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


 

<property name="email"><null/></property>

null值的传递:有两种:一:<value>null</value>  二:<null/>


 

<bean id="xxx" class="指定的类" init-method="方法名" destroy-method="方法名"/>

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

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

init-meth

 

 

 

----------------------------------------------------------------

以上属个人理解,若有不足,请各位高手指点,谢谢..