Bean常用的属性

发布时间 2023-11-14 12:32:55作者: SmallMingr

Bean常用的属性介绍

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

1、Id属性:java bean 在BeanFactory中的唯一标识,代码中通过BeanFactory获取JavaBean实例时需以此作为索引名称

2、Name属性:同id大致相同,如果给bean增加别名,可以通过name属性指定一个或多个id

3、Class属性:java Bean类名(路径)

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

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

6、Prototype:每次从容器中获取bean都是新的对象

7、Property:用于设置一个属性

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

<property name="xxx" ref="xxx"/>

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

8、Ref:指定了属性BeanFactory中其它Bean的引用关系

9、Value:指定bean的属性值

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

  <constructor-arg index="0"  value="hp电脑"/>

10、Constructor-arg:使构造方法注入,指定构造方法的参数。

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

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

​ Type属性:参数类型

​ Value属性:参数的值。

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

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

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

在spring 中bean可以定义为两种部署模式:singleton和non-singleton

3、singleton:只有一个共享的实例存在

4、non-singleton:每次请求都创建新的实例

5、singleton属性:指定此Java Bean是否采用单例(Singleton)模式,如果设为“true”

​ 则在BeanFactory作用范围内,只维护此Java Bean的一个实例,代码通过

​ BeanFactory获得此Java Bean实例的引用。反之,如果设为“false”则通过

​ BeanFactory获取此JavaBean实例时,BeanFactory每次都将创建一个新的

实例返回。

   <bean id="xxx" class="指定的bean" scope="prototype" autowire="byName">