亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Spring創(chuàng)建Bean完成后執(zhí)行指定代碼的幾種實現(xiàn)方式

 更新時間:2024年01月30日 11:25:18   作者:無名_NoOne  
在實際開發(fā)中經(jīng)常會遇到在spring容器加載完某個bean之后,需要執(zhí)行一些業(yè)務(wù)代碼的場景,本文給大家介紹Spring創(chuàng)建Bean完成后執(zhí)行指定代碼的幾種實現(xiàn)方式,感興趣的朋友一起看看吧

Spring中Bean創(chuàng)建完成后執(zhí)行指定代碼的幾種實現(xiàn)方式

在實際開發(fā)中經(jīng)常會遇到在spring容器加載完某個bean之后,需要執(zhí)行一些業(yè)務(wù)代碼的場景。比如初始化配置、緩存等。有以下幾種方式可以實現(xiàn)此需求

1、 實現(xiàn)ApplicationListener接口

實現(xiàn)ApplicationListener接口并實現(xiàn)方法onApplicationEvent()方法,Bean在創(chuàng)建完成后會執(zhí)行onApplicationEvent方法

@Component
public class DoByApplicationListener implements ApplicationListener<ContextRefreshedEvent> {
    public DoByApplicationListener() {
        System.out.println("DoByApplicationListener constructor");
    }
    @Override
    public void onApplicationEvent(ContextRefreshedEvent event) {
        if (event.getApplicationContext().getParent() == null) {
            System.out.println("DoByApplicationListener do something");
        }
    }
}

2、 實現(xiàn)InitializingBean接口

實現(xiàn)InitializingBean接口并實現(xiàn)方法afterPropertiesSet(),Bean在創(chuàng)建完成后會執(zhí)行afterPropertiesSet()方法

@Component
public class DoByInitializingBean implements InitializingBean {
    public DoByInitializingBean() {
        System.out.println("DoByInitializingBean constructor");
    }
    @Override
    public void afterPropertiesSet() throws Exception {
        System.out.println("InitByInitializingBean do something");
    }
}

3、 使用@PostConstruct注解

在Bean的某個方法上使用@PostConstruct注解,Bean在創(chuàng)建完成后會執(zhí)行該方法

@Component
public class DoByPostConstructAnnotation {
    public DoByPostConstructAnnotation() {
        System.out.println("DoByPostConstructAnnotation constructor");
    }
    @PostConstruct
    public void init(){
        System.out.println("InitByPostConstructAnnotation do something");
    }
}

轉(zhuǎn)載自:https://segmentfault.com/a/1190000019622443?utm_source=tag-newest

到此這篇關(guān)于Spring中Bean創(chuàng)建完成后執(zhí)行指定代碼的幾種實現(xiàn)方式的文章就介紹到這了,更多相關(guān)Spring Bean創(chuàng)建完成后執(zhí)行指定代碼內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 基于JavaMail的Java實現(xiàn)簡單郵件發(fā)送功能

    基于JavaMail的Java實現(xiàn)簡單郵件發(fā)送功能

    這篇文章主要為大家詳細介紹了基于JavaMail的Java實現(xiàn)簡單郵件發(fā)送功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • Java創(chuàng)建與結(jié)束線程代碼示例

    Java創(chuàng)建與結(jié)束線程代碼示例

    這篇文章主要介紹了Java創(chuàng)建與結(jié)束線程代碼示例,小編覺得挺不錯的,這里分享給大家,供需要的朋友參考。
    2017-10-10
  • Java+opencv3.2.0之scharr濾波器

    Java+opencv3.2.0之scharr濾波器

    這篇文章主要為大家詳細介紹了Java+opencv3.2.0之scharr濾波器的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-02-02
  • Java反射獲取class對象方式解析

    Java反射獲取class對象方式解析

    這篇文章主要介紹了Java反射獲取class對象方式解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • Java游戲俄羅斯方塊的實現(xiàn)實例

    Java游戲俄羅斯方塊的實現(xiàn)實例

    這篇文章主要介紹了Java游戲俄羅斯方塊的實現(xiàn)實例的相關(guān)資料,這里實現(xiàn)簡單的俄羅斯方塊幫助大家學(xué)習(xí)理解基礎(chǔ)知識,需要的朋友可以參考下
    2017-08-08
  • Java魔法堂之調(diào)用外部程序的方法

    Java魔法堂之調(diào)用外部程序的方法

    這篇文章主要介紹了Java魔法堂:調(diào)用外部程序的相關(guān)知識,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2021-02-02
  • Redis?Java客戶端建立的兩種方式小結(jié)

    Redis?Java客戶端建立的兩種方式小結(jié)

    Redis具有快速讀取數(shù)據(jù)的能力,將經(jīng)常訪問的數(shù)據(jù)緩存到Redis中,可以減輕數(shù)據(jù)庫的壓力,本文主要介紹了Redis?Java客戶端建立的兩種方式小結(jié),具有一定的參考價值,感興趣的可以了解一下
    2025-04-04
  • SpringBoot?+?Redis如何解決重復(fù)提交問題(冪等)

    SpringBoot?+?Redis如何解決重復(fù)提交問題(冪等)

    在開發(fā)中,一個對外暴露的接口可能會面臨瞬間的大量重復(fù)請求,本文就介紹了SpringBoot + Redis如何解決重復(fù)提交問題,具有一定的參考價值,感興趣的可以了解一下
    2021-12-12
  • JPA之EntityManager踩坑及解決:更改PersistenceContext

    JPA之EntityManager踩坑及解決:更改PersistenceContext

    這篇文章主要介紹了JPA之EntityManager踩坑及解決:更改PersistenceContext方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • mybatis中mapper-locations的作用

    mybatis中mapper-locations的作用

    這篇文章主要介紹了mybatis中mapper-locations的具體作用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06

最新評論