Spring框架由淺入深


【Spring簡(jiǎn)介】
Spring框架是一個(gè)開放源代碼的J2EE應(yīng)用程序框架,由Rod Johnson發(fā)起,是針對(duì)bean的生命周期進(jìn)行管理的輕量級(jí)容器(lightweight container)。Spring解決了開發(fā)者在J2EE開發(fā)中遇到的許多常見(jiàn)的問(wèn)題,提供了功能強(qiáng)大IOC、AOP及Web MVC等功能。Spring可以單獨(dú)應(yīng)用于構(gòu)筑應(yīng)用程序,也可以和Struts、Webwork、Tapestry等眾多Web框架組合使用,并且可以與Swing等桌面應(yīng)用程序AP組合。因此, Spring不僅僅能應(yīng)用于JEE應(yīng)用程序之中,也可以應(yīng)用于桌面應(yīng)用程序以及小應(yīng)用程序之中。Spring框架主要由七部分組成,分別是Spring Core、Spring AOP、Spring ORM、Spring DAO、Spring Context、Spring Web和Spring Web MVC。
【Spring特點(diǎn)】
1.方便解耦,簡(jiǎn)化開發(fā)
通過(guò)Spring提供的IoC容器,我們可以將對(duì)象之間的依賴關(guān)系交由Spring進(jìn)行控制,避免硬編碼所造成的過(guò)度程序耦合。有了Spring,用戶不必再為單實(shí)例模式類、屬性文件解析等這些很底層的需求編寫代碼,可以更專注于上層的應(yīng)用。
2.AOP編程的支持
通過(guò)Spring提供的AOP功能,方便進(jìn)行面向切面的編程,許多不容易用傳統(tǒng)OOP實(shí)現(xiàn)的功能可以通過(guò)AOP輕松應(yīng)付。
3.聲明式事務(wù)的支持
在Spring中,我們可以從單調(diào)煩悶的事務(wù)管理代碼中解脫出來(lái),通過(guò)聲明式方式靈活地進(jìn)行事務(wù)的管理,提高開發(fā)效率和質(zhì)量。
4.方便程序的測(cè)試
可以用非容器依賴的編程方式進(jìn)行幾乎所有的測(cè)試工作,在Spring里,測(cè)試不再是昂貴的操作,而是隨手可做的事情。例如:Spring對(duì)Junit4支持,可以通過(guò)注解方便的測(cè)試Spring程序。
5.方便集成各種優(yōu)秀框架
Spring不排斥各種優(yōu)秀的開源框架,相反,Spring可以降低各種框架的使用難度,Spring提供了對(duì)各種優(yōu)秀框架(如Struts,Hibernate、Hessian、Quartz)等的直接支持。
6.降低Java EE API的使用難度
Spring對(duì)很多難用的Java EE API(如JDBC,JavaMail,遠(yuǎn)程調(diào)用等)提供了一個(gè)薄薄的封裝層,通過(guò)Spring的簡(jiǎn)易封裝,這些Java EE API的使用難度大為降低。
7.Java 源碼是經(jīng)典學(xué)習(xí)范例
Spring的源碼設(shè)計(jì)精妙、結(jié)構(gòu)清晰、匠心獨(dú)運(yùn),處處體現(xiàn)著大師對(duì)Java設(shè)計(jì)模式靈活運(yùn)用以及對(duì)Java技術(shù)的高深造詣。Spring框架源碼無(wú)疑是Java技術(shù)的最佳實(shí)踐范例。如果想在短時(shí)間內(nèi)迅速提高自己的Java技術(shù)水平和應(yīng)用開發(fā)水平,學(xué)習(xí)和研究Spring源碼將會(huì)使你收到意想不到的效果。
【系統(tǒng)學(xué)習(xí)并掌握Spring】
尚硅谷Spring5框架教程
https://www.bilibili.com/video/BV1Vf4y127N5
課程詳情:
Spring5框架是一個(gè)輕量級(jí)開源的JavaEE框架,為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而出現(xiàn),它提供了功能強(qiáng)大IOC、AOP及Web MVC等功能。Spring框架可以單獨(dú)構(gòu)建應(yīng)用程序,也可以和其他框架組合使用。Spring框架憑借其強(qiáng)大的功能以及優(yōu)良的性能,在企業(yè)開發(fā)中被廣泛應(yīng)用。
本教程基于Spring框架穩(wěn)定版本5.2.6,從Spring5框架基礎(chǔ)部分講起,由淺入深,內(nèi)容涵蓋Spring5基礎(chǔ)知識(shí)、IOC容器、AOP、JdbcTemplate、事務(wù)、Spring5新功能等。
本教程適合有一定Java開發(fā)基礎(chǔ)的相關(guān)人員,也適合具備一定軟件開發(fā)能力的人員。
