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

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

        @Autowired
        private BeanB beanB;

        public BeanA() {
            System.out.println("這是Bean A 的構(gòu)造方法");
        }
        @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的 構(gòu)造方法");
        }
        void testB() {
            System.out.println("這是Bean B 的 testB 方法");
        }
    }

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

    所以得到結(jié)論: 構(gòu)造方法 > @Autowired > @PostConstruct
    posted on 2020-04-09 15:29 Terry Zou 閱讀(319) 評論(0)  編輯  收藏 所屬分類: spring

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    <2020年4月>
    2930311234
    567891011
    12131415161718
    19202122232425
    262728293012
    3456789

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    相冊

    收藏夾

    Java

    搜索

    •  

    最新隨筆

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久久久亚洲AV片无码下载蜜桃| 亚洲AV无码一区二区三区在线观看| 一区二区无码免费视频网站| 波多野结衣久久高清免费| 免费成人在线观看| 亚洲人精品午夜射精日韩| 97se亚洲综合在线| 亚洲人AV在线无码影院观看| 日韩免费高清一级毛片| 黄网站免费在线观看| 国产免费不卡视频| 国产精品色午夜视频免费看| 中文字幕不卡亚洲| 亚洲制服丝袜在线播放| 男男gvh肉在线观看免费| 成人网站免费看黄A站视频| 无码区日韩特区永久免费系列| 国产a不卡片精品免费观看| 亚洲一区二区三区影院| 亚洲AV色吊丝无码| 日韩在线观看免费| 57pao国产成永久免费视频| 国产成人啪精品视频免费网| 国产亚洲3p无码一区二区| 亚洲天堂男人影院| 成av免费大片黄在线观看| 18国产精品白浆在线观看免费| 亚洲国产黄在线观看| 亚洲美女视频免费| 牛牛在线精品观看免费正 | 美女无遮挡拍拍拍免费视频| **aaaaa毛片免费同男同女| 免费人成在线观看网站视频| 91情国产l精品国产亚洲区| 日韩免费码中文在线观看| 日本妇人成熟免费中文字幕| 国产亚洲成人久久| 亚洲综合av一区二区三区| 成全高清在线观看免费| 国产成人高清精品免费鸭子| 精品亚洲A∨无码一区二区三区|