Spring中对bean的管理细节

1.创建bean的三种方式

第一种方式:使用默认构造函数创建。
在spring的配置文件中使用bean标签,配以id和class属性之后,且没有其他属性和标签时。采用的就是默认构造函数创建bean对象,此时如果类中没有默认构造函数,则对象无法创建。

<bean id="name(自己起)" class="要创建对象的那个类的全限定类名"></bean>

第二种方式: 使用普通工厂中的方法创建对象(使用某个类中的方法创建对象,并存入spring容器)

<bean id="name1" class="工厂类的全限定类名"></bean>
<bean id="name2" factory-bean="name1" factory-method="工厂类中创可以创建对象的方法名"></bean>

第三种方式:使用工厂中的静态方法创建对象(使用某个类中的静态方法创建对象,并存入spring容器)注意:调用的这个方法必须是静态方法

<bean id="name" class="com.itheima.工厂类的全限定类名" factory-method="工厂类中创可以创建对象的静态方法名"></bean>

2.bean对象的作用范围

bean的作用范围调整是通过bean标签中的scope属性:
scope属性的作用:用于指定bean的作用范围
取值: (常用的就是单例的和多例的)
singleton:单例的(默认值)
prototype:多例的
request:作用于web应用的请求范围
session:作用于web应用的会话范围
global-session:作用于集群环境的会话范围(全局会话范围),当不是集群环境时,它就是session

3.bean对象的生命周期

单例对象
出生:当容器创建时对象出生
活着:只要容器还在,对象一直活着
死亡:容器销毁,对象消亡
总结:单例对象的生命周期和容器相同
多例对象
出生:当我们使用对象时spring框架为我们创建
活着:对象只要是在使用过程中就一直活着。
死亡:当对象长时间不用,且没有别的对象引用时,由Java的垃圾回收器回收

你可能感兴趣的:(Spring框架)