@PostConstruct 和 @PreConstruct
Posted virgosnail
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了@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
以上是关于@PostConstruct 和 @PreConstruct的主要内容,如果未能解决你的问题,请参考以下文章
Spring@PostConstruct和@PreDestroy注解详解
Java开发之@PostConstruct和@PreDestroy注解
Java开发之@PostConstruct和@PreConstruct注解
8 -- 深入使用Spring -- 2...4 使用@PostConstruct和@PreDestroy定制生命周期行为