@PostConstruct 和 @PreConstruct
【参考文章】:@PostConstruct
1. 基本概念
从Java EE5规范开始,Servlet 中增加了两个影响Servlet生命周期的注解,@PostConstruct和@PreDestroy,这两个注解被用来修饰一个非静态的void()方法。
2. 实现方式
方式一:
@PostConstruct public void someMethod(){ }
方式二:
public @PostConstruct void someMethod(){ }
3. 在 Servervlet 中的工作方式
被 @PostConstruct 和 @PreDestroy 修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器执行一次;
PostConstruct注解的方法在 Servlet 构造函数之后执行,init() 方法之前执行;
PreDestroy注解的方法在 Servlet 的 destroy() 方法之后执行;
4. 在Spring中的工作方式
有两个bean,A和B;
A持有一个B对象的引用;
A在执行完构造方法后需要调用 init() 初始化,init() 中通过B对象的部分属性进行初始化操作;
此时可在 init() 上添加 @PostConstruct 注解,init() 会在A 的构造方法执行完成后被调用;
Construct() > @PostConstruct
如果文章对您有所帮助,可以点一下推荐