使用注解定义Bean的初始化和销毁
Spring初始化bean或销毁bean时,有时需要作一些处理工作,因此spring可以在创建和拆卸bean的时候调用bean的两个生命周期方法。
回顾配置文件的写法:<bean id=“foo” class=“…Foo” init-method=“init”destory-method=“destory”/>
注解的写法:
(1)当bean被载入到容器的时候调用init方法 ,该注解作用于方法上,
注解方式如下:
@PostConstruct
初始化
(2)当bean从容器中删除的时候调用destory(scope= singleton有效)
注解方式如下:
@PreDestroy
销毁
代码实现
@Service
//@Scope("singleton")//默认是单例(singleton),更改为多例(prototype)
@Slf4j
public class Guava {
public Guava() {
log.info("调用构造方法");
}
@PostConstruct //在构造方法后执行
public void init() {
log.info("spring 容器初始化该类");
}
@PreDestroy //对单列有效
public void destory() {
log.info("spring 容器摧毁该类");
}
}