文章目录
- 1 方式1标签属性配置
- 1.1 在目标类中添加初始化、销毁方法[init(),destroy()]
- 1.2 在spring配置文件中对应的bean中添加属性
- 2 通过spring接口方式
- 在目标类中实现接口,InitializingBean和DisposableBean两接口
- 3 关闭容器的两种操作
- 3.1 使用close()方法
- 3.2 使用钩子函数:registerShutdownHook()
- 结尾彩蛋
1 方式1标签属性配置
1.1 在目标类中添加初始化、销毁方法[init(),destroy()]
public class BookDao implements com.zinksl.dao.BookDao {
public void say() {
System.out.println("BookDao say hello!");
}
// 添加初始化方法
public void init(){
System.out.println("这里是初始化方法!");
}
public void destroy(){
System.out.println("这里是销毁前方法");
}
// 添加销毁方法
}
1.2 在spring配置文件中对应的bean中添加属性
在bean中添加init-method和destroy-method属性,并指定类中方法
2 通过spring接口方式
在目标类中实现接口,InitializingBean和DisposableBean两接口
public class BookService implements com.zinksl.service.BookService, InitializingBean, DisposableBean {
private BookDao bookDao ;
public void setBookDao(BookDao bookDao) {
this.bookDao = bookDao;
}
public void say() {
bookDao.say();
System.out.println("BookService say hello!");
}
public void destroy() throws Exception {
System.out.println("这里是BookService销毁前方法");
}
public void afterPropertiesSet() throws Exception {
System.out.println("这里是BookService初始化方法");
}
}
3 关闭容器的两种操作
3.1 使用close()方法
close方法比较简单粗暴,调用就直接关闭容器
3.2 使用钩子函数:registerShutdownHook()
关闭钩子:registerShutdownHook,代表如果要关虚拟机需要先关容器
标签:03,生命周期,Spring,void,System,say,println,public,out From: https://blog.51cto.com/u_15574648/6237169