SpringInAction讀書筆記

一.Spring采用4種策略降低Java開發(fā)復(fù)雜度

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序制作、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了西區(qū)免費(fèi)建站歡迎大家使用!

基于POJO的輕量級(jí)和最小侵入性編程

依賴注入和面向接口實(shí)現(xiàn)松耦合

基于切面和慣例進(jìn)行聲明式編程

通過(guò)切面和模板減少樣板式代碼

PS:POJO

POJO(Plain Ordinary Java Object)簡(jiǎn)單的Java對(duì)象,實(shí)際就是普通JavaBeans,是為了避免和EJB混淆所創(chuàng)造的簡(jiǎn)稱。

使用POJO名稱是為了避免和EJB混淆起來(lái), 而且簡(jiǎn)稱比較直接. 其中有一些屬性及其getter setter方法的類,沒(méi)有業(yè)務(wù)邏輯,有時(shí)可以作為VO(value -object)或dto(Data Transform Object)來(lái)使用.當(dāng)然,如果你有一個(gè)簡(jiǎn)單的運(yùn)算屬性也是可以的,但不允許有業(yè)務(wù)方法,也不能攜帶有connection之類的方法。

二.依賴注入的三種方式

  1. 接口注入

  2. Setter方法注入

  3. 構(gòu)造方法注入

具體可參考:http://developer.51cto.com/art/201106/266978.htm

依賴注入:讓組件依賴于抽象,當(dāng)組件要與其他實(shí)際對(duì)象發(fā)生依賴關(guān)系時(shí),通過(guò)抽象來(lái)注入依賴的實(shí)際對(duì)象。 最大的好處是松耦合。

三.Spring最常用的三種應(yīng)用上下文

1)ClassPathXmlApplicationContext:從classpath處獲取xml文件來(lái)加載一個(gè)上下文。

2)ClassPathXmlApplicationContext:從文件系統(tǒng)中獲取xml文件來(lái)加載一個(gè)上下文。

3)XmlWebApplicationContext:從web應(yīng)用獲取xml文件來(lái)加載一個(gè)上下文。

這三個(gè)類都是ApplicationContext接口的實(shí)現(xiàn)。

使用:

ApplicationContext context = new ClassPathXmlApplicationContext("config.xml");//config.xml在src目錄下

ApplicationContext context = new FileSystemXmlApplicationContext("d:/config.xml");

四.Bean的生命周期

傳統(tǒng)Java應(yīng)用中的: new進(jìn)行實(shí)例化,就可以被使用,一旦不被使用,JVM自動(dòng)回收

Spring容器中的Bean:

實(shí)例化,填充屬性,(如果實(shí)現(xiàn)相應(yīng)接口就)傳BeanID,傳BeanFactory容器實(shí)例,傳應(yīng)用上下文的引用,調(diào)用postProcessBeforeInitialization(),調(diào)用afterpropertiesSet(),如果聲明了init-method,也調(diào)用該方法,調(diào)用postProcessAfterInitialization方法。

此時(shí)已經(jīng)可以被應(yīng)用程序使用,將一直駐留在應(yīng)用上下文中,直到該應(yīng)用上下文被銷毀。

如果Bean實(shí)現(xiàn)了DisosableBean接口,調(diào)用destroy()接口方法,如果用destroy-method聲明了銷毀方法,就調(diào)用該方法。

網(wǎng)站題目:SpringInAction讀書筆記
本文路徑:http://bm7419.com/article40/pscsho.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作企業(yè)建站、虛擬主機(jī)、做網(wǎng)站App設(shè)計(jì)、定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司