溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Spring框架七大模塊簡(jiǎn)單介紹

發(fā)布時(shí)間:2020-09-07 15:54:10 來(lái)源:腳本之家 閱讀:167 作者:_薩瓦迪卡 欄目:編程語(yǔ)言

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

Spring框架七大模塊簡(jiǎn)單介紹

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

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

1核心模塊

SpringCore模塊是Spring的核心容器,它實(shí)現(xiàn)了IOC模式,提供了Spring框架的基礎(chǔ)功能。此模塊中包含的BeanFactory類是Spring的核心類,負(fù)責(zé)JavaBean的配置與管理。它采用Factory模式實(shí)現(xiàn)了IOC即依賴注入。談到JavaBean,它是一種Java類,它遵從一定的設(shè)計(jì)模式,使它們易于和其他開發(fā)工具和組件一起使用。定義JavaBean是一種JAVA語(yǔ)言寫成的可重用組件。要編寫JavaBean,類必須是具體類和公共類,并且具有無(wú)參數(shù)的構(gòu)造器。

2Context模塊

SpringContext模塊繼承BeanFactory(或者說(shuō)Spring核心)類,并且添加了事件處理、國(guó)際化、資源裝載、透明裝載、以及數(shù)據(jù)校驗(yàn)等功能。它還提供了框架式的Bean的訪問方式和很多企業(yè)級(jí)的功能,如JNDI訪問、支持EJB、遠(yuǎn)程調(diào)用、集成模板框架、Email和定時(shí)任務(wù)調(diào)度等。

3AOP模塊

Spring集成了所有AOP功能。通過(guò)事務(wù)管理可以使任意Spring管理的對(duì)象AOP化。Spring提供了用標(biāo)準(zhǔn)Java語(yǔ)言編寫的AOP框架,它的大部分內(nèi)容都是基于AOP聯(lián)盟的API開發(fā)的。它使應(yīng)用程序拋開EJB的復(fù)雜性,但擁有傳統(tǒng)EJB的關(guān)鍵功能。

4DAO模塊

DAO是DataAccessObject的縮寫,DAO模式思想是將業(yè)務(wù)邏輯代碼與數(shù)據(jù)庫(kù)交互代碼分離,降低兩者耦合。通過(guò)DAO模式可以使結(jié)構(gòu)變得更為清晰,代碼更為簡(jiǎn)潔。DAO模塊提供了JDBC的抽象層,簡(jiǎn)化了數(shù)據(jù)庫(kù)廠商的異常錯(cuò)誤(不再?gòu)腟QLException繼承大批代碼),大幅度減少代碼的編寫,并且提供了對(duì)聲明式事務(wù)和編程式事務(wù)的支持。

5ORM映射模塊

SpringORM模塊提供了對(duì)現(xiàn)有ORM框架的支持,各種流行的ORM框架已經(jīng)做得非常成熟,并且擁有大規(guī)模的市場(chǎng),Spring沒有必要開發(fā)新的ORM工具,它對(duì)Hibernate提供了完美的整合功能,同時(shí)也支持其他ORM工具。注意這里Spring是提供各類的接口(support),目前比較流行的下層數(shù)據(jù)庫(kù)封閉映射框架,如ibatis,Hibernate等。

6Web模塊

此模塊建立在SpringContext基礎(chǔ)之上,它提供了Servlet監(jiān)聽器的Context和Web應(yīng)用的上下文。對(duì)現(xiàn)有的Web框架,如JSF、Tapestry、Structs等,提供了集成。Structs是建立在MVC這種公認(rèn)的好的模式上的,Struts在M、V和C上都有涉及,但它主要是提供一個(gè)好的控制器和一套定制的標(biāo)簽庫(kù)上,也就是說(shuō)它的著力點(diǎn)在C和V上,因此,它天生就有MVC所帶來(lái)的一系列優(yōu)點(diǎn),如:結(jié)構(gòu)層次分明,高可重用性,增加了程序的健壯性和可伸縮性,便于開發(fā)與設(shè)計(jì)分工,提供集中統(tǒng)一的權(quán)限控制、校驗(yàn)、國(guó)際化、日志等等。

7MVC模塊

pringWebMVC模塊建立在Spring核心功能之上,這使它能擁有Spring框架的所有特性,能夠適應(yīng)多種多視圖、模板技術(shù)、國(guó)際化和驗(yàn)證服務(wù),實(shí)現(xiàn)控制邏輯和業(yè)務(wù)邏輯的清晰分離。說(shuō)說(shuō)MVC在JSP的作用,這里引入了“控制器”這個(gè)概念,控制器一般由Servlet來(lái)?yè)?dān)任,客戶端的請(qǐng)求不再直接送給一個(gè)處理業(yè)務(wù)邏輯的JSP頁(yè)面,而是送給這個(gè)控制器,再由控制器根據(jù)具體的請(qǐng)求調(diào)用不同的事務(wù)邏輯,并將處理結(jié)果返回到合適的頁(yè)面。因此,這個(gè)Servlet控制器為應(yīng)用程序提供了一個(gè)進(jìn)行前-后端處理的中樞。一方面為輸入數(shù)據(jù)的驗(yàn)證、身份認(rèn)證、日志及實(shí)現(xiàn)國(guó)際化編程提供了一個(gè)合適的切入點(diǎn);另一方面也提供了將業(yè)務(wù)邏輯從JSP文件剝離的可能。業(yè)務(wù)邏輯從JSP頁(yè)面分離后,JSP文件蛻變成一個(gè)單純完成顯示任務(wù)的東西,這就是常說(shuō)的View。而獨(dú)立出來(lái)的事務(wù)邏輯變成人們常說(shuō)的Model,再加上控制器Control本身,就構(gòu)成了MVC模式。實(shí)踐證明,MVC模式為大型程序的開發(fā)及維護(hù)提供了巨大的便利。

總結(jié)

以上就是本文關(guān)于Spring框架七大模塊簡(jiǎn)單介紹的全部?jī)?nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:

Spring工作原理簡(jiǎn)單探索

Spring框架web項(xiàng)目實(shí)戰(zhàn)全代碼分享

理解Spring中的依賴注入和控制反轉(zhuǎn)

如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI