spring framework J2EE框架是一款一個(gè)開源的項(xiàng)目,而且目前非常活躍;它是一個(gè)基于IOC和AOP的構(gòu)架多層j2ee系統(tǒng)的框架,但它不強(qiáng)迫你必須在每一層中必須使用Spring,因?yàn)樗K化的很好,允許你根據(jù)自己的需要選擇使用它的某一個(gè)模塊。
Spring特性
強(qiáng)大的基于 JavaBeans 的采用控制翻轉(zhuǎn)(Inversion of Control,IoC)原則的配置管理,使得應(yīng)用程序的組建更加快捷簡(jiǎn)易。
一個(gè)可用于從 applet 到 Java EE 等不同運(yùn)行環(huán)境的核心 Bean 工廠。
數(shù)據(jù)庫事務(wù)的一般化抽象層,允許宣告式(Declarative)事務(wù)管理器,簡(jiǎn)化事務(wù)的劃分使之與底層無關(guān)。
內(nèi)建的針對(duì) JTA 和 單個(gè) JDBC 數(shù)據(jù)源的一般化策略,使 Spring 的事務(wù)支持不要求 Java EE 環(huán)境,這與一般的 JTA 或者 EJB CMT 相反。
JDBC 抽象層提供了有針對(duì)性的異常等級(jí)(不再從SQL異常中提取原始代碼), 簡(jiǎn)化了錯(cuò)誤處理, 大大減少了程序員的編碼量. 再次利用JDBC時(shí),你無需再寫出另一個(gè) '終止' (finally) 模塊. 并且面向JDBC的異常與Spring 通用數(shù)據(jù)訪問對(duì)象 (Data Access Object) 異常等級(jí)相一致.
以資源容器,DAO 實(shí)現(xiàn)和事務(wù)策略等形式與 Hibernate,JDO 和 iBATIS SQL Maps 集成。利用眾多的翻轉(zhuǎn)控制方便特性來全面支持, 解決了許多典型的Hibernate集成問題. 所有這些全部遵從Spring通用事務(wù)處理和通用數(shù)據(jù)訪問對(duì)象異常等級(jí)規(guī)范.
靈活的基于核心 Spring 功能的 MVC 網(wǎng)頁應(yīng)用程序框架。開發(fā)者通過策略接口將擁有對(duì)該框架的高度控制,因而該框架將適應(yīng)于多種呈現(xiàn)(View)技術(shù),例如 JSP,F(xiàn)reeMarker,Velocity,Tiles,iText 以及 POI。值得注意的是,Spring 中間層可以輕易地結(jié)合于任何基于 MVC 框架的網(wǎng)頁層,例如 Struts,WebWork,或 Tapestry。
提供諸如事務(wù)管理等服務(wù)的面向方面編程框架。
在設(shè)計(jì)應(yīng)用程序Model時(shí),MVC 模式(例如Struts)通常難于給出一個(gè)簡(jiǎn)潔明了的框架結(jié)構(gòu)。Spring卻具有能夠讓這部分工作變得簡(jiǎn)單的能力。程序開發(fā)員們可以使用Spring的 JDBC 抽象層重新設(shè)計(jì)那些復(fù)雜的框架結(jié)構(gòu)。
Spring下屬產(chǎn)品包括
Spring 核心產(chǎn)品
Spring Web Flow Web工作流的產(chǎn)品,里面集成了Spring 的MVC
Spring Security 認(rèn)證和集成方面的組件
Spring Web Services Web服務(wù)的工具類
Spring Batch 執(zhí)行Java批處理的工具類
Spring Dynamic Modules 動(dòng)態(tài)維護(hù)模塊的工具類
Spring Integration 集成工具
Spring JavaConfig 配置工具類