成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Spring中Aware接口實現原理解析

開發 前端
項目中如果某些Bean中需要使用如ApplicationContext,Environment,BeanFactory等對象時我們都會去實現相關的Aware接口對象,然后就可以直接使用對應的對象了,今天我們就來開始它的實現原理。

[[399408]]

環境:Spring5.3.3 + Java8

項目中如果某些Bean中需要使用如ApplicationContext,Environment,BeanFactory等對象時我們都會去實現相關的Aware接口對象,然后就可以直接使用對應的對象了,今天我們就來開始它的實現原理。

使用示例:

  1. @Component 
  2. public class BeanAware implements ApplicationContextAware { 
  3.  
  4.     private ApplicationContext ctx ; 
  5.      
  6.     @Override 
  7.     public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { 
  8.         this.ctx = applicationContext ; 
  9.         System.out.println(this.ctx) ; 
  10.     } 
  11.  

 入口函數:

  1. public static void main(String[] args) { 
  2.         AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext("com.pack") ; 
  3.         ctx.getBean(BeanAware.class) ; 
  4.         ctx.close(); 
  5.     } 

正如上面這樣只要你實現對應的*Aware接口就可以使用相應的接口對象了。

先來看看Aware接口的層級結構:

接著我們查看

AnnotationConfigApplicationContext的父類AbstractApplicationContext

在父類中,有如下方法:

上面選中的就是處理Aware相關接口類了。查看這類

  1. class ApplicationContextAwareProcessor implements BeanPostProcessor 

該類是個Bean后處理器,在bean實例化及依賴注入完成后、在任何初始化代碼(比如配置文件中的init-method)調用之前調用和初始化代碼調用之后調用

在初始化之前方法中先檢查Bean是否是響應Aware接口的子類,如果不是直接返回;否則進入invokeAwareInterfaces方法

到這里你應該知道了Aware的底層原理了吧

完畢!!!

 

責任編輯:姜華 來源: 今日頭條
相關推薦

2010-06-18 15:33:19

UML接口

2020-05-21 13:25:43

Spring組件架構

2017-08-22 16:40:22

前端JavaScript接口

2010-07-08 10:28:51

UML接口

2024-06-27 08:26:10

LooperAndroid內存

2023-02-28 09:07:18

ChatGPTAI

2020-09-22 12:00:23

Javahashmap高并發

2019-12-06 10:59:20

JavaScript運行引擎

2021-07-12 09:45:36

NameServer 核心Conusmer

2021-01-12 14:46:34

Kubernetes開發存儲

2021-07-05 07:51:43

JVM底層Python

2010-01-26 09:50:30

C++接口

2009-11-09 16:57:05

WCF托管特性

2023-12-26 08:08:02

Spring事務MySQL

2021-12-01 18:36:35

屬性

2023-08-11 07:44:40

TCP滑動窗口數據

2009-07-06 17:36:06

ResultSetJDBC Connec

2021-06-03 10:01:28

JDBCStatement接口

2021-05-21 10:01:01

JDBCJavaStatement接口

2021-06-22 10:24:22

Statement接口修改數據刪除數據
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产伦精品一区二区三区精品视频 | 国产视频精品在线观看 | 天堂一区 | 福利视频网站 | 国产美女自拍视频 | 中文字幕伊人 | 中文字幕av在线 | 草草草久久久 | 久久久免费在线观看 | 黄网站在线播放 | 精品一区二区三区在线观看国产 | 久久久精品在线 | 欧美精品导航 | 国产精品美女久久久久aⅴ国产馆 | 国产欧美日韩久久久 | 欧美一区二区三区四区视频 | 国产日韩一区二区 | www在线| 一呦二呦三呦国产精品 | 五月综合久久 | 毛片一级电影 | 成人一区二区在线 | 久久免费国产 | 91精品国产91久久久久久最新 | 日本a∨精品中文字幕在线 亚洲91视频 | 欧美区日韩区 | 91精品一区二区三区久久久久久 | 国产亚洲成av人在线观看导航 | 欧美日韩不卡合集视频 | 亚洲国产成人av | 97精品国产97久久久久久免费 | 在线观看中文字幕一区二区 | 国产成人综合在线 | 精品久久久久久久久久久 | 亚洲精品视频观看 | 国产1区2区在线观看 | 国产精品一区二区日韩 | 日韩高清国产一区在线 | 久久国产欧美日韩精品 | 91免费在线 | 色片在线观看 |