本页使用了标题或全文手工转换

Spring Framework

维基百科,自由的百科全书
跳到导航 跳到搜索
Spring Framework
開發者 Pivotal
初始版本 2002年10月1日,​15年前​(2002-10-01
穩定版本
穩定版本
5.0.4.RELEASE [1]
(2018年2月19日 (2018-02-19)
開發狀態 活跃
编程语言 Java
操作系统 跨平台
系統平台 JVM
类型 Application framework
许可协议 Apache License 2.0
網站 spring.io
源代码库 github.com/spring-projects/spring-framework

Spring Framework 是一个开源的JavaJava EE全功能栈(full-stack)的应用程序框架,以Apache License 2.0开源许可协议的形式发布,也有.NET平台上的移植版本。该框架基于 Expert One-on-One Java EE Design and DevelopmentISBN 0-7645-4385-7)一书中的代码,最初由Rod Johnson和Juergen Hoeller等开发。Spring Framework提供了一个简易的开发方式,这种开发方式,将避免那些可能致使底层代码变得繁杂混乱的大量的属性文件和帮助类。

Spring中包含的关键特性

  • 强大的基于JavaBeans的采用控制反转(Inversion of Control,IoC)原则的配置管理,使得应用程序的组建更加快捷简易。
  • 数据库事务的一般化抽象层,允许声明式(Declarative)事务管理器,简化事务的划分使之与底层无关。
  • 内建的针对JTA和单个JDBC数据源的一般化策略,使Spring的事务支持不要求Java EE环境,这与一般的JTA或者EJB CMT相反。
  • JDBC 抽象层提供了有针对性的异常等级(不再从SQL异常中提取原始代码),简化了错误处理,大大减少了程序员的编码量。再次利用JDBC时,你无需再写出另一个'终止'(finally)模块。并且面向JDBC的异常与Spring通用数据访问对象(Data Access Object)异常等级相一致。
  • 以资源容器,DAO实现和事务策略等形式与HibernateJDOMyBatisSQL Maps集成。利用众多的翻转控制方便特性来全面支持,解决了许多典型的Hibernate集成问题。所有这些全部遵从 Spring 通用事务处理和通用数据访问对象异常等级规范。
  • 灵活的基于核心 Spring 功能的MVC网页应用程序框架。开发者通过策略接口将拥有对该框架的高度控制,因而该框架将适应于多种呈现(View)技术,例如JSPFreeMarkerVelocityThymeleaf 等。值得注意的是,Spring 中间层可以轻易地结合于任何基于MVC框架的网页层,例如StrutsWebWorkTapestry
  • 提供诸如事务管理等服务的AOP框架。

在设计应用程序 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 的支持。

2017年9月 Spring Framework 正式发布了 5.0 版本,此版本引入了 Spring WebFlux,一个高性能、响应式、异步的 Web 框架。Spring 5.0 重点加强了对函数式编程、响应式编程(reactive programming)的支持能力,是一个非常大的进步。

相关链接[编辑]

Wikibooks-logo.svg
您可以在維基教科書中查找此百科条目的相關電子教程:

参考资料[编辑]

  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].