1. 程式人生 > >Spring原始碼解析--核心容器類簡介

Spring原始碼解析--核心容器類簡介

核心容器類

  • AliasRegistry:

    對映別名的超級介面;

  • BeanDefinitionRegistry : 通常用於儲存bean 定義描述(BeanDefinition型別)資訊, 例如,RootBeanDefinitionChildBeanDefinition 類 的例項; 通常由通過整合AbstractBeanDefinition,由bean工廠去實現介面中的方法; 這是spring工廠包中的唯一一個囊括了註冊BeanDefinition型別的介面;標準的工廠介面僅需要提供方法去實現; spring中用於讀取類描述資訊的讀取類,期望工作在一個實現了這個介面的實現類上;最常見的實現類為:DefaultListableBeanFactory

    GenericApplicationContext

  • SingletonBeanRegistry: 繼承此介面的類需要提供一個統一的單例註冊方法;

  • BeanFactory : spring容器獲取bean的核心方法定義;

  • ListableBeanFactory : 提供了一些列舉類的方法的介面;

  • HierarchicalBeanFactory : bean工廠訪問父子工廠的方法;

  • ConfigurableBeanFactory : 提供配置bean工廠類的方法;

  • AutowireCapableBeanFactory : 有自動注入能力的工廠;

  • DefaultSingletonBeanRegistry : 實現別名註冊和單例註冊的預設類;

  • FactoryBeanRegistrySupport : 對於工廠類註冊的擴充

剩下的都是一些抽象類和實現類;其中最主要的就是sping預設的bean工廠的實現類:DefaultListableBeanFactory