<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 93,  comments - 2,  trackbacks - 0
    @PostConstruct
    PostConstruct注釋用于在完成依賴項注入以執行任何初始化之后需要執行的方法。必須在類投入使用之前調用此方法。
    所有支持依賴注入的類都必須支持此注釋。即使類沒有請求注入任何資源,也必須調用使用PostConstruct注釋的方法。
    只有一個方法可以使用此批注進行批注。
    應用PostConstruct注釋的方法必須滿足以下所有條件:除了攔截器之外,方法絕不能有任何參數,在這種情況下它采用Interceptor規范定義的InvocationContext對象。
    在攔截器類上定義的方法必須具有以下簽名之一:
    void <METHOD>(InvocationContext)Object <METHOD>(InvocationContext)拋出異常注意:
    PostConstruct攔截器方法不能拋出應用程序異常,但可以聲明它拋出檢查異常,包括java.lang.Exception,
    如果相同的攔截器方法除了生命周期事件之外插入業務或超時方法。
    如果PostConstruct攔截器方法返回一個值,容器將忽略它。
    在非攔截器類上定義的方法必須具有以下簽名:void <METHOD>()應用PostConstruct的方法可以是publicprotectedpackage privateprivate。
    除應用程序客戶端外,該方法絕不能是靜態的。
    該方法可能是最終的。如果該方法拋出一個未經檢查的異常,那么該類絕不能投入使用,除非EJB可以處理異常甚至從它們恢復的EJB

    然后就會思考問題,這個注釋是修飾初始化之后需要執行的方法,那么它和@Autowired、構造函數的執行順序是什么呢?(當然注釋中已經說明了PostConstruct注釋用于在完成依賴項注入之后)
    @Service
    public class BeanA {

        @Autowired
        private BeanB beanB;

        public BeanA() {
            System.out.println("這是Bean A 的構造方法");
        }
        @PostConstruct
        private void init() {
            System.out.println("這是BeanA的 init 方法");
            beanB.testB();
        }
    }
    @Service
    public class BeanB {

        @PostConstruct
        private void init() {
            System.out.println("這是BeanB 的init 方法");
        }
        public BeanB() {
            System.out.println("這是Bean B的 構造方法");
        }
        void testB() {
            System.out.println("這是Bean B 的 testB 方法");
        }
    }

    啟動后輸出:
    這是Bean A 的構造方法 
    這是Bean B的 構造方法
    這是BeanB 的init 方法
    這是BeanA的 init 方法
    這是Bean B 的 testB 方法

    所以得到結論: 構造方法 > @Autowired > @PostConstruct
    posted on 2020-04-09 15:29 Terry Zou 閱讀(308) 評論(0)  編輯  收藏 所屬分類: spring
    <2020年4月>
    2930311234
    567891011
    12131415161718
    19202122232425
    262728293012
    3456789

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    相冊

    收藏夾

    Java

    搜索

    •  

    最新隨筆

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲偷偷自拍高清| 亚洲男人天堂2020| 亚洲国产另类久久久精品| 亚洲乱色伦图片区小说| 日本人的色道免费网站| 在线亚洲97se亚洲综合在线| 亚洲a∨国产av综合av下载 | 亚洲永久在线观看| 久久久久国产免费| 久久精品国产精品亚洲精品| 美女被羞羞网站免费下载| 女人毛片a级大学毛片免费| 亚洲天堂一区在线| 久久免费的精品国产V∧| 国产精品久久久亚洲| 国产三级在线免费观看| 亚洲伊人成无码综合网 | 香蕉免费看一区二区三区| 成a人片亚洲日本久久| 日本免费人成视频在线观看| 亚洲午夜久久久久久久久久| 你懂的免费在线观看网站| 亚洲情a成黄在线观看动漫尤物| 最近2019年免费中文字幕高清| 亚洲伦理中文字幕| 免费乱码中文字幕网站| 中文字幕av无码不卡免费| 亚洲综合国产精品| 卡一卡二卡三在线入口免费| 日韩a毛片免费观看| 亚洲国产精品免费视频| 免费观看一级毛片| 无码av免费网站| 久久精品无码免费不卡| 亚洲爆乳无码一区二区三区| 波多野结衣免费在线观看| 国产亚洲精品精品精品| 亚洲成AV人片在| 卡一卡二卡三在线入口免费| 丰满人妻一区二区三区免费视频| 亚洲视频在线不卡|