Spring中bean对象的装配方式、作用域及生命周期详解
作者:哇哈哈水有点甜
这篇文章主要介绍了Spring中bean对象的装配方式、作用域及生命周期详解,SprignBoot中 @Bean 完美的替换了了上面的这种在xml中配置的方法,使用以下方法就能让spring在需要自动创建Info对象时,自动调用这个方法,需要的朋友可以参考下
Spring中bean对象的装配方式、作用域及生命周期详解
1. bean对象装配的三种方式
(就是在配置文件中写一个bean标签)
①内部new一个实现类,调用默认构造器
<bean id="userService" class="com.diao.service.UserServiceImpl"></bean>
②通过静态工厂方法
<!--在静态方法中返回一个实例对象,通过调用工厂类的静态方法获取实例对象--> <bean id="userService" class="com.diao.service.UserServiceFactory" factory-method="返回对象的静态方法"></bean>
③实例工厂方法(非静态方法,需要对象调用)
<!--通过创建工厂类的实例对象,然后调用对象的方法去返回一个对象--> <bean id="factory" class="com.diao.service.UserServiceFactory"></bean> <bean id="userService" factory-bean="factory" factory-method="返回对象的方法"></bean>
2.bean对象的作用域
常用的有:
- singleton:单例(标签中不指定默认是单例的)
- prototype:多例
- request:作用于web应用的请求范围
- session:作用于web应用的会话范围
- global-session:作用于集群环境的会话范围,不是集群环境时,就是session
<bean id="userService" class="com.diao.service.UserServiceImpl" scope="prototype"></bean>
3.bean对象的生命周期
单例: 出生:当容器创建时对象出生 活着:只要容器还在,对象一直或者 死亡:容器销毁,对象消亡
多例: 出生:当使用对象时spring框架进行创建 活着:对象只要是在使用过程中就一直活着 死亡:当对象长时间不用且没有别的对象引用时,由Java的垃圾回收器进行回收
到此这篇关于Spring中bean对象的装配方式、作用域及生命周期详解的文章就介绍到这了,更多相关bean对象的装配方式、作用域及生命周期内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!