Spring Framework
Spring框架是 Java 平台的一个开源的全栈(full-stack)应用程序框架和控制反转容器实现,一般被直接称为 Spring。该框架的一些核心功能理论上可用于任何 Java 应用,但 Spring 还为基于Java企业版平台构建的 Web 应用提供了大量的拓展支持。Spring 没有直接实现任何的编程模型,但它已经在 Java 社区中广为流行,基本上完全代替了企业级JavaBeans(EJB)模型。 Spring框架以 Apache License 2.0 开源许可协议的形式发布,该框架最初由 Rod Johnson 以及 Juergen Hoeller 等人开发。 版本历史
第一版由 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 EE 7 的一些方面以及 WebSocket 的支持。 2017年9月 Spring Framework 正式发布了 5.0 版本,此版本引入了 Spring WebFlux,一个高性能、响应式、异步的 Web 框架。Spring 5.0 重点加强了对函数式编程、响应式程序设计(reactive programming)的支持能力,是一个非常大的进步。 核心功能模块
在设计应用程序 Model 时,MVC模式(例如 Struts)通常难于给出一个简洁明了的框架结构。Spring 却具有能够让这部分工作变得简单的能力。程序开发员们可以使用Spring的JDBC抽象层重新设计那些复杂的框架结构。 控制反转(IOC,Inverse Of Control),即把创建对象的权利交给框架,也就是指将对象的创建、对象的存储、对象的管理交给了Spring容器。Spring容器是Spring中的一个核心模块,用于管理对象,底层可以理解为是一个Map集合。 面向切面程序设计(Aspect-Oriented Programming, AOP) 就是将那些与业务无关,却为业务模块所共同调用的逻辑或责任分开封装起来,便于减少系统的重复代码,降低模块间的耦合度,并有利于未来的可操作性和可维护性。 数据访问(DAO层支持)Spring Data实现了对数据访问接口的统一,支持多种数据库访问框架或组件(如:JDBC、Hibernate、MyBatis(iBatis))作为最终数据访问的实现。 Spring框架为事务管理提供了一致的抽象,具有以下优点:
模型-视图-控制器(MVC)Spring MVC 实现了基于 MVC 设计方法的实现,结合基于Java注解的配置,允许开发者开发出低代码侵入的Web应用项目,并简便地实现大部分Web功能(包括请求参数注入、文件上传控制等)。 “约定大于配置”的快速应用开发Spring BootSpring Boot是基于Spring Framework 4.0衍生的,用于快速搭建独立的基于生产级别的Spring应用的框架,可以以最小的依赖引入来构建一个Spring应用。并且它还具有以下特点:
整合框架相关链接![]() 維基教科書中的相關電子教程::en:Spring framework
参考资料
|
Portal di Ensiklopedia Dunia