最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot獲取ApplicationContext的3種方式

 更新時間:2019年09月24日 10:43:57   作者:A 是小阿怪啊  
這篇文章主要為大家詳細(xì)介紹了SpringBoot獲取ApplicationContext的3種方式,具有一定的參考價值,感興趣的小伙伴們可以參考一下

ApplicationContext是什么?

簡單來說就是Spring中的容器,可以用來獲取容器中的各種bean組件,注冊監(jiān)聽事件,加載資源文件等功能。

Application Context獲取的幾種方式

1 直接使用Autowired注入

@Component
public class Book1 {

 @Autowired
 private ApplicationContext applicationContext;

 public void show (){
  System.out.println(applicationContext.getClass());
 }
}

2 利用 spring4.3 的新特性

使用spring4.3新特性但是存在一定的局限性,必須滿足以下兩點:

1) 構(gòu)造函數(shù)只能有一個,如果有多個,就必須有一個無參數(shù)的構(gòu)造函數(shù),此時,spring會調(diào)用無參的構(gòu)造函數(shù)

2) 構(gòu)造函數(shù)的參數(shù),必須在spring容器中存在

@Component
public class Book2 {

 private ApplicationContext applicationContext;

 public Book2(ApplicationContext applicationContext){
  System.out.println(applicationContext.getClass());
  this.applicationContext=applicationContext;
 }

 public void show (){
  System.out.println(applicationContext.getClass());
 }

}

3 實現(xiàn)spring提供的接口 ApplicationContextAware

spring 在bean 初始化后會判斷是不是ApplicationContextAware的子類,調(diào)用setApplicationContext()方法, 會將容器中ApplicationContext傳入進(jìn)去

@Component
public class Book3 implements ApplicationContextAware {

 private ApplicationContext applicationContext;

 public void show (){
  System.out.println(applicationContext.getClass());
 }

 @Override
 public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
  this.applicationContext = applicationContext;
 }
}

結(jié)果獲取三次:

class org.springframework.context.annotation.AnnotationConfigApplicationContext
class org.springframework.context.annotation.AnnotationConfigApplicationContext
class org.springframework.context.annotation.AnnotationConfigApplicationContext

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java中的常用輸入輸出語句的操作代碼

    Java中的常用輸入輸出語句的操作代碼

    這篇文章主要介紹了Java中的常用輸入輸出語句的操作代碼,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • Spring下Filter過濾器配置全局異常處理的詳細(xì)步驟

    Spring下Filter過濾器配置全局異常處理的詳細(xì)步驟

    這篇文章主要介紹了Spring下Filter過濾器配置全局異常處理的詳細(xì)步驟,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • 關(guān)于Maven如何構(gòu)建生命周期

    關(guān)于Maven如何構(gòu)建生命周期

    這篇文章主要介紹了關(guān)于Maven如何構(gòu)建生命周期,Maven構(gòu)建生命周期描述的是一次構(gòu)建過程經(jīng)歷經(jīng)歷了多少個事件,需要的朋友可以參考下
    2023-04-04
  • Java之不通過構(gòu)造函數(shù)創(chuàng)建一個對象問題

    Java之不通過構(gòu)造函數(shù)創(chuàng)建一個對象問題

    這篇文章主要介紹了Java之不通過構(gòu)造函數(shù)創(chuàng)建一個對象問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • SpringMVC 攔截器的使用示例

    SpringMVC 攔截器的使用示例

    這篇文章主要介紹了SpringMVC 攔截器的使用示例,幫助大家更好的理解和學(xué)習(xí)使用SpringMVC,感興趣的朋友可以了解下
    2021-04-04
  • java子類調(diào)用父類的方法中包含子類重寫的實例方法

    java子類調(diào)用父類的方法中包含子類重寫的實例方法

    在本篇文章里小編給大家整理了關(guān)于java子類調(diào)用父類的方法中包含子類重寫的實例方法以及相關(guān)知識點,需要的朋友們可以學(xué)習(xí)下。
    2019-09-09
  • java?class?name實例深入精講

    java?class?name實例深入精講

    這篇文章主要為大家介紹了java?class?name實例深入精講,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • 理解java和python類變量以及類的成員變量

    理解java和python類變量以及類的成員變量

    這篇文章主要幫助大家理解java和python類變量以及類的成員變量,用實例進(jìn)行解析,感興趣的朋友可以參考一下
    2016-02-02
  • springboot相關(guān)面試題匯總詳解

    springboot相關(guān)面試題匯總詳解

    這篇文章主要介紹了springboot相關(guān)面試題匯總詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-08-08
  • Java基礎(chǔ)類庫之StringBuffer類用法詳解

    Java基礎(chǔ)類庫之StringBuffer類用法詳解

    String類是在所有開發(fā)項目開發(fā)之中一定會使用的一個功能類。雖然String類很好用,但也有弊端——內(nèi)容不允許頻繁修改,所以為了解決問題,我們提供了StringBuffer類。本文就來講講StringBuffer類的用法
    2022-07-07

最新評論

郁南县| 眉山市| 盐亭县| 信丰县| 铜山县| 扬州市| 河南省| 鞍山市| 三都| 澳门| 池州市| 新化县| 伊金霍洛旗| 栾城县| 和政县| 自治县| 扶沟县| 东兰县| 濮阳市| 吉木乃县| 剑川县| 山东省| 尚义县| 荆州市| 墨脱县| 津南区| 富平县| 道孚县| 富民县| 定边县| 台南县| 长垣县| 广饶县| 花垣县| 章丘市| 长汀县| 大港区| 东乡族自治县| 福建省| 万年县| 呼伦贝尔市|