本頁使用了標題或全文手工轉換

Spring Framework

維基百科,自由的百科全書
前往: 導覽搜尋
Spring Framework
開發者 Pivotal
初始版本 2002年10月1日​(2002-10-01
穩定版本 4.3.3.RELEASE [1](2016年9月19日 (2016-09-19)
預覽版本 5.0.0.M2(2016年9月21日 (2016-09-21)
開發狀態 活躍
程式語言 Java
作業系統 跨平台
系統平台 Java虛擬機器
類型 Application framework
許可協定 Apache License 2.0
網站 spring.io

Spring Framework 是一個開源的JavaJava EE全功能棧(full-stack)的應用程式框架,以Apache許可證形式發布,也有.NET平台上的移植版本。該框架基於 Expert One-on-One Java EE Design and Development(ISBN 0-7645-4385-7)一書中的代碼,最初由Rod Johnson和Juergen Hoeller等開發。Spring Framework提供了一個簡易的開發方式,這種開發方式,將避免那些可能致使底層代碼變得繁雜混亂的大量的屬性檔案和幫助類。

Spring中包含的關鍵特性

  • 強大的基於JavaBeans的採用控制翻轉(Inversion of Control,IoC)原則的配置管理,使得應用程式的組建更加快捷簡易。
  • 一個可用於從appletJava EE等不同執行環境的核心Bean工廠。
  • 資料庫事務的一般化抽象層,允許宣告式(Declarative)事務管理器,簡化事務的劃分使之與底層無關。
  • 內建的針對JTA和單個JDBC資料來源的一般化策略,使Spring的事務支援不要求Java EE環境,這與一般的JTA或者EJB CMT相反。
  • JDBC 抽象層提供了有針對性的異常等級(不再從SQL異常中提取原始代碼),簡化了錯誤處理,大大減少了程式設計師的編碼量。再次利用JDBC時,你無需再寫出另一個'終止'(finally)模組。並且面向JDBC的異常與Spring通用資料存取物件(Data Access Object)異常等級相一致。
  • 以資源容器,DAO實現和事務策略等形式與Hibernate,JDO和iBATIS SQL Maps整合。利用眾多的翻轉控制方便特性來全面支援,解決了許多典型的Hibernate整合問題。所有這些全部遵從Spring通用事務處理和通用資料存取物件異常等級規範。
  • 靈活的基於核心Spring功能的MVC網頁應用程式框架。開發者通過策略介面將擁有對該框架的高度控制,因而該框架將適應於多種呈現(View)技術,例如JSPFreeMarker、Velocity、Tiles、iText以及POI。值得注意的是,Spring中間層可以輕易地結合於任何基於MVC框架的網頁層,例如Struts、WebWork或Tapestry

在設計應用程式Model時,MVC模式(例如Struts)通常難於給出一個簡潔明了的框架結構。Spring卻具有能夠讓這部分工作變得簡單的能力。程式開發員們可以使用Spring的JDBC抽象層重新設計那些複雜的框架結構。

版本歷史

第一版由 Rod Johnson 開發,並在2002年10月發布在 Expert One-on-One J2EE Design and Development 一書中。2003年6月,Spring Framework 第一次發布在 Apache 2.0 許可證下。2004年3月,發布了里程碑的版本1.0,2004年9月以及2005年3月,又發布了新的里程碑版本。2006年,Spring Framework 獲得了 Jolt 生產力獎 和 JAX 創新獎。[2][3]

2006年10月發布Spring 2.0,2007年11月 Spring 2.5,2009年12月 Spring 3.0,2011年 Spring 3.1,2013年11月 Spring 3.2.5,2013年12月發布了4.0版本。[4]值得注意的是,Spring 4.0 版本中增加了對 Java SE 8, Groovy 2, Java EE7 的一些方面以及 WebSocket 的支援。

相關連結

參考資料

  1. ^ https://projects.spring.io/spring-framework Spring Framework Projects
  2. ^ Jolt winners 2006
  3. ^ JAX Innovation Award Gewinner 2006
  4. ^ Spring Framework 3.2.5 Released. Official Spring website. 7 Nov 2013 [16 October 2016].