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