Spring-Bean初始化及销毁逻辑处理

1.如果需要在Bean实例化后执行一些逻辑(比如:某javaBean用于连接数据库进行增删改查然后关闭数据库连接,那么在javabean创建之后需要执行连接数据库的操作),有两种方法:
(1)bean标签中使用init-method属性,值为方法名a。spring初始化bean时,检测是否有init-method属性,如果有,就去调用在这个bean中定义的a方法。
(2)让bean实现InitializingBean接口
spring初始化bean时,检测到Bean实现了这个接口,就会调用该接口的方法。
2.如果需要在Bean销毁之前执行一些逻辑,有两种方法:
(1)bean标签中使用destory-method
(2)让Bean实现DisposableBean接口

注:若所有bean初始化前或销毁前都要调用同一个方法,可以在beans标签中添加属性default-init-method或default-destory-method属性。

实现:
使用init-method定义实例化之后执行的逻辑
1.定义一个方法:
在这里插入图片描述
2.配置Spring在实例化bean后调用该方法
在这里插入图片描述
使用destory-method定义实例销毁之前执行的逻辑
1.定义一个方法:

在这里插入图片描述
2.配置Spring在销毁bean前调用该方法
在这里插入图片描述
为所有bean设定默认的初始化方法和销毁方法Spring-Bean初始化及销毁逻辑处理_第1张图片
通过实现InitializingBean接口定义实例化之后执行的逻辑
Spring-Bean初始化及销毁逻辑处理_第2张图片
通过实现DisposableBean接口定义实例化之后执行的逻辑
Spring-Bean初始化及销毁逻辑处理_第3张图片

你可能感兴趣的:(Spring全家桶)