一.Spring采用4種策略降低Java開發(fā)復(fù)雜度
基于POJO的輕量級(jí)和最小侵入性編程
依賴注入和面向接口實(shí)現(xiàn)松耦合
基于切面和慣例進(jìn)行聲明式編程
通過切面和模板減少樣板式代碼
PS:POJO
POJO(Plain Ordinary Java Object)簡單的Java對(duì)象,實(shí)際就是普通JavaBeans,是為了避免和EJB混淆所創(chuàng)造的簡稱。
使用POJO名稱是為了避免和EJB混淆起來, 而且簡稱比較直接. 其中有一些屬性及其getter setter方法的類,沒有業(yè)務(wù)邏輯,有時(shí)可以作為VO(value -object)或dto(Data Transform Object)來使用.當(dāng)然,如果你有一個(gè)簡單的運(yùn)算屬性也是可以的,但不允許有業(yè)務(wù)方法,也不能攜帶有connection之類的方法。
二.依賴注入的三種方式
接口注入
Setter方法注入
具體可參考:http://developer.51cto.com/art/201106/266978.htm
依賴注入:讓組件依賴于抽象,當(dāng)組件要與其他實(shí)際對(duì)象發(fā)生依賴關(guān)系時(shí),通過抽象來注入依賴的實(shí)際對(duì)象。 大的好處是松耦合。
三.Spring最常用的三種應(yīng)用上下文
1)ClassPathXmlApplicationContext:從classpath處獲取xml文件來加載一個(gè)上下文。
2)ClassPathXmlApplicationContext:從文件系統(tǒng)中獲取xml文件來加載一個(gè)上下文。
3)XmlWebApplicationContext:從web應(yīng)用獲取xml文件來加載一個(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)用該方法。
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開啟,新人活動(dòng)云服務(wù)器買多久送多久。
文章標(biāo)題:SpringInAction讀書筆記-創(chuàng)新互聯(lián)
鏈接URL:http://chinadenli.net/article0/dosgoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、域名注冊、服務(wù)器托管、搜索引擎優(yōu)化、標(biāo)簽優(yōu)化、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容