原创 Spring IOC(十一)Mybatis-Spring 驅動原理

前面有幾篇單獨講Mybatis的,單獨使用Mybatis,有以下幾步: 配置Mybatis-config文件,類似於下面: <configuration> <properties> <property

原创 Spring IOC(十)幾種BeanPostProcessor 關係

前面幾篇文章分析了一些BeanPostProcessors,包括 AutowiredAnnotationBeanPostProcessor 、 ConfigurationClassPostProcessor 、CommonAnno

原创 Spring IOC(八)CommonAnnotationBeanPostProcessor 原理分析

CommonAnnotationBeanPostProcessor 註解主要是來實現 @PostConstruct、@PreDestroy、@Resource 、@WebServiceRef等註解相關功能的。 注入 前面分析過,

原创 Spring IOC (九)refresh 分析 後續 過程 分析

花了幾篇文章 探究Spring的 BeanPostProcessor和BeanFactoryPostProcessor,本文則開始接受refresh 後續邏輯。 registerBeanPostProcessors registe

原创 Spring IOC(七)Spring 中循環依賴的解決

首先拋出結論,Spring 目前無法解決 構造方法循環依賴,而可以解決字段的循環依賴。 例如以下兩種情況: 字段依賴 CyclicA: @Component public class CyclicA { @Autowi

原创 Spring IOC(六)AutowiredAnnotationBeanPostProcessor 原理分析

使用Spring 編程時,使用Ioc,我們只需要聲明對象,而由Spring 替我門自動注入,而其中起重要作用則爲 AutowiredAnnotationBeanPostProcessor,它在bean實例化後,進行這重要的初始化操

原创 Spring IOC(五)BeanFactory.getBean 方法分析

Spring 容器幫程序管理Bean,而實際上最終是由BeanFactory 管理的,本文就具體分析getBean方法。 重載方法 Spring 提供以下方法獲取bean實例,當然大同小異: getBean 以 傳入 class

原创 Dubbo進階(十五)- Dubbo中 Filter 探究

Filter 機制也稱攔截器機制,在衆多框架或者語言中很常見,可以實現登錄鑑權,網關攔截、封裝全局狀態返回等,博主文章以下幾個問題展開: Filter 的例子 Dubbo中內置的Filter是怎樣的?Consumer 和Prov

原创 Dubbo進階(十四)- Dubbo中參數回調 Callback 實現深究

參數回調 Callback是Dubbo中一種機制,與調用本地callback相同,將基於長連接生成反向代理在服務端執行客戶端的邏輯,本文將以以下內容展開。 以下幾個方面: callback例子 callback中,關鍵配置,服務

原创 Dubbo進階(十一)- Dubbo 請求調用過程(一)

上一篇文章主要分析了消費者通過 獲取代理對象的詳細過程,以及對象內部原理,本文將從具體調用出發,一步一步深入Dubbo 調用內部細節。 前期鋪墊 博主這些文章對Dubbo 分析中,都是以API 調用爲例子進行,而本文分析消費者調用

原创 Dubbo進階(十)- Dubbo動態對象生成過程詳細分析

上一篇文章仔細的分析了 ,由 refer 方法 獲取的 代理對象的過程,以及最後獲取到的代理對象的結構,但是結尾比較草,本節仔細分析 字節碼生成的代理對象。 結構 上一篇文章結尾草草的給出了 代理對象的結構圖,但是並沒有對(T)

原创 Dubbo進階(十二)- Dubbo 請求調用過程(二)

由於深入源碼,分析的較爲細,因而調用過程分爲兩篇文章進行。>…< Dubbo 請求調用過程(一) 上篇文章從 InvokerInvocationHandler 調用,到 MockClusterInvoker 調用,再到Abstr

原创 Dubbo進階(九)- Dubbo 消費者中 代理對象 初始化詳解

上一篇文章中,講到 Dubbo 初始化一個 代理對象時,會執 ReferenceConfig 的 init 方法,而後執行其 ref = createProxy(map); 而在這一步中,會進行以下幾步: 判斷是否是 Jv

原创 Dubbo進階(八)- @Reference或ReferenceConfig.get代理對象如何產生(一):SPI模式中 Wrapper和 SPI 類組裝邏輯

當使用Dubbo時候,使用@Reference 或者 ReferenceConfig.get 時候獲取的一個目標接口,那麼進行調用時候,接口並不是直接調用到了接口的實現(Impl)類。 public static void

原创 Dubbo進階(六)- Dubbo SPI 源碼級過程詳解

Dubbo SPI 是Dubbo用於支持 擴展 一個功能。 關於 SPI 的具體意思以及內容,相信 官方這篇文檔已經講的足夠通俗易懂了: http://dubbo.apache.org/zh-cn/blog/introductio