2 回答

TA貢獻1827條經驗 獲得超9個贊
1、ioc,實現java bean的低耦合性,便于java code 的重用;
2、aop使用簡便;
3、實現restful的mvc,便于web開發;
4、大量的注解pojo,簡化了xml配置;
5、database的dao模板類,兼容多種數據庫,而且底層只需要更換jdbc driver,datasource聲明好驅動,jdbctemplate就可以訪問數據庫了;
6、spring官網有很多解決方案可以使用(安全,數據訪問,頁面流,android)
總之spring很好的實現了系統的低耦合高聚合,便于代碼的重用,而且面向接口的編程可以讓api的訪問不用知道底層的實現(如jdbctemplate,它并不知道是訪問什么類型的數據庫,只是配置上的差異,這樣以后想從mysql換到oracle只需要換下驅動就好了,dao代碼都不用改)

TA貢獻1862條經驗 獲得超6個贊
1.方便解耦,簡化開發
通過Spring提供的IoC容器,我們可以將對象之間的依賴關系交由Spring進行控制,避免硬編碼所造成的過度程序耦合。有了Spring,用戶不必再為單實例模式類、屬性文件解析等這些很底層的需求編寫代碼,可以更專注于上層的應用。
2.AOP編程的支持
通過Spring提供的AOP功能,方便進行面向切面的編程,許多不容易用傳統OOP實現的功能可以通過AOP輕松應付。
3.聲明式事務的支持
在Spring中,我們可以從單調煩悶的事務管理代碼中解脫出來,通過聲明式方式靈活地進行事務的管理,提高開發效率和質量。
4.方便程序的測試
可以用非容器依賴的編程方式進行幾乎所有的測試工作,在Spring里,測試不再是昂貴的操作,而是隨手可做的事情。例如:Spring對Junit4支持,可以通過注解方便的測試Spring程序。
5.方便集成各種優秀框架
Spring不排斥各種優秀的開源框架,相反,Spring可以降低各種框架的使用難度,Spring提供了對各種優秀框架(如Struts,Hibernate、Hessian、Quartz)等的直接支持。
6.降低Java EE API的使用難度
Spring對很多難用的Java EE API(如JDBC,JavaMail,遠程調用等)提供了一個薄薄的封裝層,通過Spring的簡易封裝,這些Java EE API的使用難度大為降低。
7.Java 源碼是經典學習范例
Spring的源碼設計精妙、結構清晰、匠心獨用,處處體現著大師對Java設計模式靈活運用以及對Java技術的高深造詣。Spring框架源碼無疑是Java技術的最佳實踐范例。如果想在短時間內迅速提高自己的Java技術水平和應用開發水平,學習和研究Spring源碼將會使你收到意想不到的效果。
添加回答
舉報