1、beanfactory類結構體系
beanfactory介面及其子類定義了spring ioc容器體系結構。
beanfactory
******jndibeanfactory(c)
autowirecapablebeanfactory(i)
defaultlistablebeanfactory(c)
xmlbeanfactory(c)
configuralbelistablebeanfactory(i)
defaultlistablebeanfactory(c)
xmlbeanfactory(c)
hierarchicalbeanfactory(i)
configuralbebeanfactory(i)
abstractbeanfactory(c)
abstractautowirecapablebeanfactory(c)
defaultlistablebeanfactory(c)
xmlbeanfactory(c)
configurablelistablebeanfactory(i)
defaultlistablebeanfactory(c)
xmlbeanfactory(c)
listablebeanfactory(i)
staticlistablebeanfactory(c)
configuralbelistablebeanfactory(i)
defaultlistablebeanfactory(c)
xmlbeanfactory(c)
3、xmlbeanfactory
xmlbeanfactory只提供了最基本的ioc容器功能,它主要讀取以xml形式定義的beandefinition。
(1)xmlbeanfactory原始碼:
public class xmlbeanfactory extends defaultlistablebeanfactory{
//讀取xml形式的bean定義,然後解析xml生成ioc管理的bean
private final xmlbeandefinitionreader reader = new xmlbeandefinitionreader(this);
//resource是spring中用來封裝io操作的介面
public xmlbeanfactory(resource resource) throws bean***ception{
this(resource,null);
//呼叫父類的構造方法,同時呼叫loadbeandefinitions方法從指定xml檔案載入bean定義
public xmlbeanfactory(resource resource,beanfactory parentbeanfactory) throws bean***ception{
super(parentbeanfactory);
this.reader.loadbeandefinitions(resource);
(2)xmlbeanfactory實現ioc容器的基本過程:
//建立ioc容器管理的bean的xml配置檔案,即定位資源
classpathresource resource = new classpathresource("beans.xml");
//建立beanfactory
defaultlistablebeanfactory factory = new defaultlistablebeanfactory();
//建立bean定義讀取器
xmlbeandefinitionreader reader = new xmlbeandefinitionreader(factory);
//使用bean定義讀取器讀入bean配置資訊,即載入配置
reader.loadbeandefinitions(resource);
spring getid();
string getdisplayname();
long getstartupdate();
//獲取自動裝配功能的beanfactory
autowirecapablebeanfactory getautowirecapablebeanfactory() throws illegalstateexception;
a.支援不同的資訊源
b.訪問資源
c.支援應用事件
Spring入門1 IOC控制翻轉
ioc inversion of control,控制反轉 這是spring的核心,貫穿始終。所謂ioc,對於spring框架來說,就是由spring來負責控制物件的生命週期和物件間的關係。這是什麼意思呢,舉個簡單的例子,我們是如何找女朋友的?常見的情況是,我們到處去看 有長得漂亮身材又好的mm,然...
spring技術內幕5 IoC容器的依賴注入
1 當spring ioc容器完成了bean定義資源的定位 載入和解析註冊以後,ioc容器中已經管理類bean定義的相關資料,但是此時ioc容器還沒有對所管理的bean進行依賴注入,依賴注入在以下兩種情況發生 1 使用者第一次通過getbean方法向ioc容器索要bean時,ioc容器觸發依賴注入。...
Spring技術內幕 AOP技術原理
proxyfactorybean是spring ioc中建立aop應用的底層方法。以它為入口學習。proxyfactorybean的配置和使用 1.定義使用的通知器advisor 2.定義proxyfactorybean 作為乙個bean來定義,設定proxyinte ce inte cenames...