歡迎您訪問鄭州興邦電子股份有限公司官方網(wǎng)站!
阿里巴巴誠信通企業(yè)
全國咨詢熱線:40000-63966
興邦電子,中國水控機(jī)第一品牌

聯(lián)系興邦電子

全國咨詢熱線:40000-63966

工廠:河南省 鄭州市 高新區(qū)蓮花街電子電器產(chǎn)業(yè)園

Spring的幾個(gè)特點(diǎn)

文章出處:http://alanandpatty.com 作者:興邦開發(fā)部 人氣: 發(fā)表時(shí)間:2016年04月16日

[文章內(nèi)容簡介]:Spring作為實(shí)現(xiàn)J2EE的一個(gè)全方位應(yīng)用程序框架,為我們開發(fā)企業(yè)級(jí)應(yīng)用提供了一個(gè)健壯、高效的解決方案。

Spring作為實(shí)現(xiàn)J2EE的一個(gè)全方位應(yīng)用程序框架,為我們開發(fā)企業(yè)級(jí)應(yīng)用提供了一個(gè)健壯、高效的解決方案。所謂全方位,不得不說以下幾個(gè)特點(diǎn):

 

    1 、非侵入式:對(duì)于寫代碼從來不考慮復(fù)用和移植的程序員來說,這一點(diǎn)根本就沒有吸引力,那么請?zhí)^。所謂非侵入式是指Spring框架的API不會(huì)在業(yè)務(wù)邏輯上出現(xiàn),也就是說我們的業(yè)務(wù)邏輯應(yīng)該是純凈的,不能出現(xiàn)與業(yè)務(wù)邏輯無關(guān)的代碼。首先針對(duì)應(yīng)用而言,這樣我們才能將業(yè)務(wù)邏輯從當(dāng)前應(yīng)用中剝離出來,從而在其他的應(yīng)用中實(shí)現(xiàn)復(fù)用;其次針對(duì)框架而言,由于業(yè)務(wù)邏輯中沒有Spring的API,所以業(yè)務(wù)邏輯也可以從Spring框架快速的移植到其他框架。

 

    2 、容器:Spring提供容器功能,容器可以管理對(duì)象的生命周期,對(duì)象與對(duì)象之間的依賴關(guān)系。你可以寫一個(gè)配置文件(通常是xml文件),在上面定義對(duì)象的名字,是否是單例,以及設(shè)置與其他對(duì)象的依賴關(guān)系。那么在容器啟動(dòng)之后,這些對(duì)象就被實(shí)例化好了,你直接去用就好了,而且依賴關(guān)系也建立好了。

 

    3 、IOC:控制反轉(zhuǎn),謂之“依賴關(guān)系的轉(zhuǎn)移”,如果以前都是依賴于實(shí)現(xiàn),那么現(xiàn)在反轉(zhuǎn)為依賴于抽象吧,其實(shí)它的核心思想就是要面向接口編程,至于何謂接口何謂抽象,以及它們的好處,多看看設(shè)計(jì)模式吧,這里就不費(fèi)口舌了。

 

    4、 依賴注入:建立對(duì)象與對(duì)象之間依賴關(guān)系的實(shí)現(xiàn),包括接口注入、構(gòu)造注入、set注入,在Spring中只支持后兩種。

 

    5 、AOP:面向方面編程,我們可以把日志、安全、事務(wù)管理等服務(wù)(或功能)理解成一個(gè)“方面”,那么以前這些服務(wù)一直是直接寫在業(yè)務(wù)邏輯的代碼當(dāng)中的,這有兩點(diǎn)不好;首先業(yè)務(wù)邏輯不純凈,其次這些服務(wù)被很多業(yè)務(wù)邏輯反復(fù)使用,完全可以剝離出來做到復(fù)用。那么AOP就是這些問題的解決方案,我們可以把這些服務(wù)剝離出來形成一個(gè)“方面”,以期做到復(fù)用;然后將“方面”動(dòng)態(tài)的插入到業(yè)務(wù)邏輯中讓業(yè)務(wù)邏輯能夠享受到此“方面”的服務(wù)。

 

    其他還有一些特點(diǎn)不是Spring的核心,這里只做簡單陳述,如:對(duì)JDBC的封裝與簡化,提供事務(wù)管理功能,對(duì)O/R mapping工具(hibernate、iBATIS)的整合;提供MVC解決方案,也可以與其他web框架(Struts、JSF)進(jìn)行整合;還有對(duì)JNDI、mail等服務(wù)進(jìn)行封裝。

本文關(guān)鍵詞:spring,mvc,興邦一卡通
回到頂部