spring不重復(fù)發(fā)明輪子。Spring使你能創(chuàng)建一個(gè)一致的、可管理的系統(tǒng)應(yīng)用。
Spring可以集成的框架包括:
1. 持久框架
Hibernate
JDO implementation
TopLink
Apache OJB
iBATIS
所有的集成方式是統(tǒng)一的。Spring使用DAO接口,都拋出DataAcessException異常。
Spring提供helpers(比如模板)實(shí)現(xiàn)統(tǒng)一的編程風(fēng)格。
如果要使用SQL-BASED的數(shù)據(jù)存取,那么Spring自身的JDBC Framework是適合的。
重要的是:Spring允許你混合使用數(shù)據(jù)存取的方法---比如:Hibernate和JDBC代碼共用一個(gè)數(shù)據(jù)庫(kù)連接。這對(duì)于復(fù)雜的應(yīng)用來(lái)說(shuō)是非常有益的,因?yàn)槭褂脝为?dú)的持久框架很可能不能完成所有的持久操作。
2. Web framework
Struts
WebWork
Spring MVC
Tapestry
JSF
Spring對(duì)于Web框架的集成與持久框架的集成是不一樣的。Spring提供了自己完整的Web框架。Spring在與其他Web框架很好集成的同時(shí),提供一些特殊的便利給自己的Web框架。比如:使用一些先進(jìn)的依賴注入功能,或者應(yīng)用AOP建議到Web控制中。
3. AOP Framework
Spring提供基于代理的AOP框架,這可以解決大多數(shù)J2EE應(yīng)用的問(wèn)題。
但是如果你需要使用一些基于代理的框架無(wú)法提供的功能,比如:用new創(chuàng)建對(duì)象,而且不由任何工廠管理。
為支持這種需求,Spring集成了AspectJ和AspectWerkz,2種最好的基于類交織的AOP框架。
4. Other Framework
Spring還可以和許多框架集成,Quartz Scheduler,Jasper Reporter, Velocity,F(xiàn)reeMaker 模板引擎。
Spring可以集成的框架包括:
1. 持久框架
Hibernate
JDO implementation
TopLink
Apache OJB
iBATIS
所有的集成方式是統(tǒng)一的。Spring使用DAO接口,都拋出DataAcessException異常。
Spring提供helpers(比如模板)實(shí)現(xiàn)統(tǒng)一的編程風(fēng)格。
如果要使用SQL-BASED的數(shù)據(jù)存取,那么Spring自身的JDBC Framework是適合的。
重要的是:Spring允許你混合使用數(shù)據(jù)存取的方法---比如:Hibernate和JDBC代碼共用一個(gè)數(shù)據(jù)庫(kù)連接。這對(duì)于復(fù)雜的應(yīng)用來(lái)說(shuō)是非常有益的,因?yàn)槭褂脝为?dú)的持久框架很可能不能完成所有的持久操作。
2. Web framework
Struts
WebWork
Spring MVC
Tapestry
JSF
Spring對(duì)于Web框架的集成與持久框架的集成是不一樣的。Spring提供了自己完整的Web框架。Spring在與其他Web框架很好集成的同時(shí),提供一些特殊的便利給自己的Web框架。比如:使用一些先進(jìn)的依賴注入功能,或者應(yīng)用AOP建議到Web控制中。
3. AOP Framework
Spring提供基于代理的AOP框架,這可以解決大多數(shù)J2EE應(yīng)用的問(wèn)題。
但是如果你需要使用一些基于代理的框架無(wú)法提供的功能,比如:用new創(chuàng)建對(duì)象,而且不由任何工廠管理。
為支持這種需求,Spring集成了AspectJ和AspectWerkz,2種最好的基于類交織的AOP框架。
4. Other Framework
Spring還可以和許多框架集成,Quartz Scheduler,Jasper Reporter, Velocity,F(xiàn)reeMaker 模板引擎。