TOC
前言
@PostConstruct
是
Java EE5
中引入的,其用于需要在依赖注入完成后执行任何初始化的方法,且只会被执行一次,该注解在
Java 11
中已删除,继续使用需要添加依赖项:
<dependency><groupId>javax.annotation</groupId><artifactId>javax.annotation-api</artifactId><version>1.3.2</version></dependency>
关于@PostConstruct
简单例子,构造函数被调用时,
Bean
尚未初始化导致空指针异常。
为什么使用@PostConstruct?
- 在构造函数中,尚未发生依赖项的注入,而在托管
Bean
中,
@PostConstruct
在对象构造函数之后调用。
为什么要使用@PostConstruct由Bean初始化,而不是构造函数本身?
- 当构造函数被调用时,
Bean
尚未初始化(没有依赖项被注入),而在
@PostConstruct
方法中,
Bean
已完全初始化,可以使用依赖项。
@PostConstruct注解的方法在初始化中的执行顺序
-
Constructor
(构造方法) ->
@Autowired
(依赖注入) ->
@PostConstruct
(注释的方法)
– End -﹀﹀﹀梦想是咸鱼关注一下吧