spring小結(一)

spring太多了,主要講講開發中常用的吧,分2個部分,ioc,aop;分開來說,白話一點,寫的比較亂,總結性文字偏多,具體還請查看spring源碼。

1.ioc

IoC(Inversion of Control)控制反轉,只能說是神器(把控制權從具體業務對象手中轉交到平臺或者框架中,說白了使整個項目結構更清晰,各司其職),對象創建責任的反轉,在springBeanFacotoryIoC容器的核心接口,負責實例化,定位,配置應用程序中的對象及建立這些對象間的依賴。XmlBeanFacotory實現BeanFactory接口,通過獲取xml配置文件數據,組成應用對象及對象間的依賴關係。

spring中有三種注入方式,一種是set注入,一種是接口注入,另一種是構造方法注入。

我們在使用的時候,主要講dao層實例配置到bean.xml中、或掃描相關組件包,spring容器默認創建單例的bean,所以就不需要做單例處理了。

spring已經爲我們實現了很多裝bean的容器,只是容器的材質不同,BeanFactory、ApplicationContext比較常用。2者區別,說白了BeanFactory是ioc容器的基本實現形式,ApplicationContext則比較高級。


從一個簡單的容器講講吧:XmlBeanFactory


    public class XmlBeanFactory extends DefaultListableBeanFactory {  
        private final XmlBeanDefinitionReader reader = new XmlBeanDefinitionReader(this);  
        public XmlBeanFactory(Resource resource) throws BeansException {  
            this(resource, null);  
        }  
        public XmlBeanFactory(Resource resource, BeanFactory parentBeanFactory) throws BeansException {  
            super(parentBeanFactory);  
            this.reader.loadBeanDefinitions(resource);  
        }  
    }  

註釋中看出這是很老的一段代碼,有興趣的一定要好好研究一下代碼


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章