spring工厂生产对象时对象生命周期的三个阶段
spring生产对象的生命周期包括创建、初始化、销毁。
一、创建
spring创建bean是何时创建的?
如果该bean是单例的,那么和工厂applicationContext的创建一起被创建;如果该bean是多例的,那么在使用时才会被创建。
二、初始化,一般用于资源的初始化
spring将bean注入后,会调用对象的初始化方法。
对象的初始化方法spring提供了两种方法。
1、实现spring提供的InitializingBean接口,通过实现afterPropertiesSet() 方法初始化对象。(与spring框架存在耦合)
2、提供一个自定义myinit()方法,在创建该bean时指定初始化方法init-method。
<bean id="user" class="com.sms.entity.User" init-method="myInit" />
如果提供了两种初始化方法,那么先执行afterPropertiesSet()再执行myInit()。
三、销毁,一般用于资源的释放
销毁方法只适用于scope为singleton的对象。
spring销毁bean前,会首先调用对象的销毁方法,再完成销毁操作。
spring什么时候销毁bean?
在关闭spring工厂时,spring会销毁所有的bean。
对象的销毁方法spring提供了两种方法。
1、实现spring提供的DisposableBean接口,通过实现destroy() 方法初始化对象。(与spring框架存在耦合)
2、自定义方法,在销毁该bean时指定销毁方法destroy-method。
<bean id="user" class="com.sms.entity.User" destroy-method="myDestory">
spring工厂生产对象时对象生命周期的三个阶段相关推荐
- Hibernate→HQL、query.list()返回数据类型、查询相关语句、分页、原生SQL、@注解、持久化对象状态及生命周期、一多关系、继承映射关系、逆向工程
HQL Query实例与表 session通用工具类 Query对象 from 类→List<类>接收 映射类 仅查询商品 查询商品及所在商家 别名 返回数据类型定义 Iterator接收 ...
- (转)Spring管理的Bean的生命周期
http://blog.csdn.net/yerenyuan_pku/article/details/52834011 bean的初始化时机 前面讲解了Spring容器管理的bean的作用域.接着我们 ...
- spring bean的作用域和生命周期
一.spring bean的作用域 五种作用域:singleton.prototype.request.session.globalSession request.session和global ses ...
- Spring IOC:bean的生命周期与@Autowire(1)
全系列文章: <Spring IOC:bean的生命周期与@Autowire(1)> <Spring IOC:bean的生命周期与@Autowire(2)> <Sprin ...
- IoC基础篇(一)--- Spring容器中Bean的生命周期
IoC基础篇(一)--- Spring容器中Bean的生命周期 日出日落,春去秋来,花随流水,北雁南飞,世间万物皆有生死轮回.从调用XML中的Bean配置信息,到应用到具体实例中,再到销毁,Bean也 ...
- spring一: 容器以及bean生命周期
spring框架的几个优点: 1. 轻量级 2. 针对接口编程,解耦合 3. aop编程 4. 方便集成各种优秀框架 5.非侵入式 6.容器 IOC(Inversion of Cont ...
- 关于FragmentManager动态管理Fragment时Fragment生命周期的探究
Fragment是Android中的重要组件,在Android 3.0的时候添加进来. 关于Fragment的生命周期,我相信了解过的开发人员都应该把以下方法脱口而出:onAttach, onCrea ...
- Activity在旋转屏幕时的生命周期
一.Activity的生命周期 1.Activity生命周期中的重要方法 (1).onCreate():表示Activity已经被创建.这是Activity生命周期中的第一个方法,Activity生命 ...
- Activity为singleTask模式时的生命周期
Activity为singleTask模式时的生命周期 Activity A:android:launchMode="singleTask" Activity B:launchMo ...
- dialog 弹框时activity生命周期调用过程
dialog 弹框时activity生命周期调用过程 这个问题,分两部分 在普通activity弹框dialog,activity的onPause方法会被调用吗? activity a中给dialog ...
最新文章
- pandas案例分析
- pythonexcel汇总_用python汇总excel表格数据-怎样用python遍历表格中的内容
- 从入门到精通聊聊区块链
- 网络犯罪分子为何针对中小企业?—Vecloud微云
- imp 只导入索引_使用imp导入表和索引至不同表空间方法
- php用重写算出圆柱体的体积,圆柱的体积
- import win32com.client在python中报错及其解决办法
- HTML5法律律师咨询公司响应式模板
- 【英语学习】【Level 08】U04 What I love L1 What's on your playlist?
- c语言中调用平均成绩,C语言、用调用函数、输入3个学生5门课程的成绩分别用函数求每个学生平均分每门课的平均分...
- QT实现简单的抽奖界面
- Alias Piping Solutions系列工厂设计软件
- JAVA——根据QQ群号得到idkey以及QQ群加群链接[网页版本]解决方案
- 沧州中考计算机考试时间,2019年沧州中考考试时间安排,沧州中考考试科目时间安排表...
- 各位老铁,善财读书会试运营了
- ​在Windows 10 下安装 Vmware 时遇到的问题和解决​方法
- 什么是静态测试?什么是动态测试?
- Android指南针代码示例
- 常见面试题整理--操作系统篇
- matlab两幅图重叠,matlab两幅图叠在一起
热门文章
- 开启 Truffle Ganache MetaMask交互
- 如何用深度学习做自然语言处理?这里有份最佳实践清单
- 高效计算基础与线性分类器
- 2014年各种编程语言的薪资和市场需求
- 从0到1建立一张评分卡之可视化分析
- iis 7 php_Windows server 2008 下基于IIS7配置php7.2运行环境
- java getresourceasstream null_java踩坑记-getResourceAsStream
- Linux 如何获取PAGE size的大小?
- Oracle-PL/SQL基础
- spring批处理mysql语句_Spring框架——批处理(batch)和事务(Transaction)