@PostConstruct注解学习
@PostConstruct注解好多人以為是Spring提供的。其實是Java自己的注解。
Java中該注解的說明:@PostConstruct該注解被用來修飾一個非靜態的void()方法。被@PostConstruct修飾的方法會在服務器加載Servlet的時候運行,并且只會被服務器執行一次。PostConstruct在構造函數之后執行,init()方法之前執行。
通常我們會是在Spring框架中使用到@PostConstruct注解 該注解的方法在整個Bean初始化中的執行順序:
Constructor(構造方法)?->?@Autowired(依賴注入)?->?@PostConstruct(注釋的方法)
?作用:
@PostConstruct注解的方法在項目啟動的時候執行這個方法,也可以理解為在spring容器啟動的時候執行,可作為一些數據的常規化加載,比如數據字典之類的。
執行順序:
其實從依賴注入的字面意思就可以知道,要將對象p注入到對象a,那么首先就必須得生成對象a和對象p,才能執行注入。所以,如果一個類A中有個成員變量p被@Autowried注解,那么@Autowired注入是發生在A的構造方法執行完之后的。
如果想在生成對象時完成某些初始化操作,而偏偏這些初始化操作又依賴于依賴注入,那么久無法在構造函數中實現。為此,可以使用@PostConstruct注解一個方法來完成初始化,@PostConstruct注解的方法將會在依賴注入完成后被自動調用。
Constructor >> @Autowired >> @PostConstruct
?
?
啟動項目輸出如下
總結
以上是生活随笔為你收集整理的@PostConstruct注解学习的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何使用花生壳或ngork工具将web应
- 下一篇: 李晓菁201771010114《面向对象