对于SpringBean在初始化或者是注销的时候,需要某些特殊的操作,这个时候可以通过一些手段实现bean lifecycle callback来解决这些问题
首先,对于初始化,有如下三种手段:
- 在Bean的某一个方法中使用@PostConstruct注解,容器会在执行完构造器后通过该方法进行初始化;
- Bean通过实现接口InitializingBean接口,并实现其中的afterPropertiesSet()方法,该方法就是一些初始化操作;
- 在Spring的配置中,配置Bean的Init-Method或者Default-init-method方法来实现。
其次,对于注销,也有三种手段:
- 在Bean的某一个方法中使用@PreDestroy注解,容器会在回收对象空间之前执行该方法;
- Bean通过实现接口DisposableBean接口,并实现其中的destroy()方法,该方法就是一些注销前的操作;
- 在Spring的配置中,配置Bean的destroy-method或者Default-destroy-method方法来实现