Spring 系列: Spring 框架簡(jiǎn)介

Spring 是一個(gè)開(kāi)源框架舔箭,是為了解決企業(yè)應(yīng)用程序開(kāi)發(fā)復(fù)雜性而創(chuàng)建的。框架的主要優(yōu)勢(shì)之一就是其分層架構(gòu)晤碘,分層架構(gòu)允許您選擇使用哪一個(gè)組件,同時(shí)為 J2EE 應(yīng)用程序開(kāi)發(fā)提供集成的框架功蜓。

在這篇由三部分組成的Spring 系列的第 1 部分中园爷,我將介紹 Spring 框架。我先從框架底層模型的角度描述該框架的功能式撼,然后將討論兩個(gè)最有趣的模塊:Spring 面向方面編程(AOP)和控制反轉(zhuǎn) (IOC) 容器童社。接著將使用幾個(gè)示例演示 IOC 容器在典型應(yīng)用程序用例場(chǎng)景中的應(yīng)用情況。這些示例還將成為本系列后面部分進(jìn)行的展開(kāi)式討論的基礎(chǔ)著隆,在本文的后面部分扰楼,將介紹 Spring 框架通過(guò) Spring AOP 實(shí)現(xiàn) AOP 構(gòu)造的方式。

Spring 框架

Spring 框架是一個(gè)分層架構(gòu)美浦,由 7 個(gè)定義良好的模塊組成弦赖。Spring 模塊構(gòu)建在核心容器之上,核心容器定義了創(chuàng)建抵代、配置和管理 bean 的方式腾节,如圖 1 所示。

圖 1. Spring 框架的 7 個(gè)模塊

組成 Spring 框架的每個(gè)模塊(或組件)都可以單獨(dú)存在,或者與其他一個(gè)或多個(gè)模塊聯(lián)合實(shí)現(xiàn)案腺。每個(gè)模塊的功能如下:

核心容器:核心容器提供 Spring 框架的基本功能庆冕。核心容器的主要組件是BeanFactory,它是工廠模式的實(shí)現(xiàn)劈榨。BeanFactory使用控制反轉(zhuǎn)(IOC) 模式將應(yīng)用程序的配置和依賴性規(guī)范與實(shí)際的應(yīng)用程序代碼分開(kāi)访递。

Spring 上下文:Spring 上下文是一個(gè)配置文件,向 Spring 框架提供上下文信息同辣。Spring 上下文包括企業(yè)服務(wù)拷姿,例如 JNDI、EJB旱函、電子郵件响巢、國(guó)際化、校驗(yàn)和調(diào)度功能棒妨。

Spring AOP:通過(guò)配置管理特性踪古,Spring AOP 模塊直接將面向方面的編程功能集成到了 Spring 框架中。所以券腔,可以很容易地使 Spring 框架管理的任何對(duì)象支持 AOP伏穆。Spring AOP 模塊為基于 Spring 的應(yīng)用程序中的對(duì)象提供了事務(wù)管理服務(wù)。通過(guò)使用 Spring AOP纷纫,不用依賴 EJB 組件枕扫,就可以將聲明性事務(wù)管理集成到應(yīng)用程序中。

Spring DAO:JDBC DAO 抽象層提供了有意義的異常層次結(jié)構(gòu)辱魁,可用該結(jié)構(gòu)來(lái)管理異常處理和不同數(shù)據(jù)庫(kù)供應(yīng)商拋出的錯(cuò)誤消息烟瞧。異常層次結(jié)構(gòu)簡(jiǎn)化了錯(cuò)誤處理,并且極大地降低了需要編寫(xiě)的異常代碼數(shù)量(例如打開(kāi)和關(guān)閉連接)商叹。Spring DAO 的面向 JDBC 的異常遵從通用的 DAO 異常層次結(jié)構(gòu)燕刻。

Spring ORM:Spring 框架插入了若干個(gè) ORM 框架,從而提供了 ORM 的對(duì)象關(guān)系工具剖笙,其中包括 JDO卵洗、Hibernate 和 iBatis SQL Map。所有這些都遵從 Spring 的通用事務(wù)和 DAO 異常層次結(jié)構(gòu)弥咪。

Spring Web 模塊:Web 上下文模塊建立在應(yīng)用程序上下文模塊之上过蹂,為基于 Web 的應(yīng)用程序提供了上下文。所以聚至,Spring 框架支持與 Jakarta Struts 的集成酷勺。Web 模塊還簡(jiǎn)化了處理多部分請(qǐng)求以及將請(qǐng)求參數(shù)綁定到域?qū)ο蟮墓ぷ鳌?/p>

Spring MVC 框架:MVC 框架是一個(gè)全功能的構(gòu)建 Web 應(yīng)用程序的 MVC 實(shí)現(xiàn)。通過(guò)策略接口扳躬,MVC 框架變成為高度可配置的脆诉,MVC 容納了大量視圖技術(shù)甚亭,其中包括 JSP、Velocity击胜、Tiles亏狰、iText 和 POI。

Spring 框架的功能可以用在任何 J2EE 服務(wù)器中偶摔,大多數(shù)功能也適用于不受管理的環(huán)境暇唾。Spring 的核心要點(diǎn)是:支持不綁定到特定 J2EE 服務(wù)的可重用業(yè)務(wù)和數(shù)據(jù)訪問(wèn)對(duì)象。毫無(wú)疑問(wèn)辰斋,這樣的對(duì)象可以在不同 J2EE 環(huán)境 (Web 或 EJB)策州、獨(dú)立應(yīng)用程序、測(cè)試環(huán)境之間重用宫仗。

更多詳細(xì)源碼參考來(lái)源:http://minglisoft.cn/technology?歡迎大家一起學(xué)習(xí)研究相關(guān)技術(shù)够挂,源碼獲取請(qǐng)加求求(企鵝):2042849237

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市藕夫,隨后出現(xiàn)的幾起案子下硕,更是在濱河造成了極大的恐慌,老刑警劉巖汁胆,帶你破解...
    沈念sama閱讀 218,546評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異霜幼,居然都是意外死亡嫩码,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,224評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)罪既,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)铸题,“玉大人,你說(shuō)我怎么就攤上這事琢感《洌” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,911評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵驹针,是天一觀的道長(zhǎng)烘挫。 經(jīng)常有香客問(wèn)我,道長(zhǎng)柬甥,這世上最難降的妖魔是什么饮六? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,737評(píng)論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮苛蒲,結(jié)果婚禮上卤橄,老公的妹妹穿的比我還像新娘。我一直安慰自己臂外,他們只是感情好窟扑,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,753評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布喇颁。 她就那樣靜靜地躺著,像睡著了一般嚎货。 火紅的嫁衣襯著肌膚如雪橘霎。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,598評(píng)論 1 305
  • 那天厂抖,我揣著相機(jī)與錄音茎毁,去河邊找鬼。 笑死忱辅,一個(gè)胖子當(dāng)著我的面吹牛七蜘,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播墙懂,決...
    沈念sama閱讀 40,338評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼橡卤,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了损搬?” 一聲冷哼從身側(cè)響起碧库,我...
    開(kāi)封第一講書(shū)人閱讀 39,249評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎巧勤,沒(méi)想到半個(gè)月后嵌灰,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,696評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡颅悉,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,888評(píng)論 3 336
  • 正文 我和宋清朗相戀三年沽瞭,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片剩瓶。...
    茶點(diǎn)故事閱讀 40,013評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡驹溃,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出延曙,到底是詐尸還是另有隱情豌鹤,我是刑警寧澤,帶...
    沈念sama閱讀 35,731評(píng)論 5 346
  • 正文 年R本政府宣布枝缔,位于F島的核電站布疙,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏愿卸。R本人自食惡果不足惜拐辽,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,348評(píng)論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望擦酌。 院中可真熱鬧俱诸,春花似錦、人聲如沸赊舶。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,929評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至园骆,卻和暖如春舔痪,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背锌唾。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,048評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工锄码, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人晌涕。 一個(gè)月前我還...
    沈念sama閱讀 48,203評(píng)論 3 370
  • 正文 我出身青樓滋捶,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親余黎。 傳聞我的和親對(duì)象是個(gè)殘疾皇子重窟,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,960評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容