Spring 简明教程

Spring Tutorial

Spring Framework 是一个开源 Java 平台,它为非常轻松而且非常快速地开发健壮的 Java 应用程序提供全面的基础设施支持。Spring Framework 最初是由罗德·约翰逊编写的,并于 2003 年 6 月在 Apache 2.0 许可证下首次发布。本教程基于 2015 年 3 月发布的 Spring Framework 4.1.6 版本编写。

Why to Learn Spring?

Spring 是一个最受欢迎的应用程序开发框架,用于企业级 Java。全世界数百万开发人员使用 Spring Framework 创建高性能、易于测试的代码,可以重复使用。

Spring Framework 是一个开源 Java 平台。它最初由 Rod Johnson 编写,并于 2003 年 6 月首次在 Apache 2.0 许可证下发布。

在大小和透明度方面,Spring 是轻量级的。Spring Framework 的基本版本大约为 2MB。

Spring Framework 的核心特性可以用在 Java 应用程序的开发中,不过有一些扩展是在 Java EE 平台基础之上构建 Web 应用程序的。Spring 框架的目标是让 J2EE 开发用起来更轻松,并通过启用基于 POJO 的编程模型来提升良好的编程实践。

Applications of Spring

以下是使用 Spring Framework 的若干重要优势清单

  1. POJO Based - 使用 Spring,开发人员可以使用 POJO 来开发企业级应用程序。只使用 POJO 的好处是您不需要 EJB 容器产品(例如应用程序服务器),但您可以选择仅使用一个健壮的 servlet 容器,例如 Tomcat 或某些商业产品。

  2. Modular - Spring 按模块化方式组织。即使包和类较多,您也仅需要关注您需要的那些,而忽略其余内容。

  3. Integration with existing frameworks - Spring 不会重复发明轮子,而是真正利用了一些现有技术,例如一些 ORM 框架、日志记录框架、JEE、Quartz 和 JDK 定时器以及其他视图技术。

  4. Testablity - 测试一个使用 Spring 编写的应用程序很简单,因为环境相关代码被移到了此框架中。此外,通过使用 JavaBean 样式的 POJO,可以使用依赖项注入更轻松地注入测试数据。

  5. Web MVC - Spring 的网络框架是精心设计的网络 MVC 框架,它为诸如 Struts 或其他过度设计或不太流行的网络框架提供了极佳的替代品。

  6. Central Exception Handling - Spring 提供了一个便捷的 API,可以将特定于技术的异常(例如,由 JDBC、Hibernate 或 JDO 引发)转换为一致的、未经检查的异常。

  7. Lightweight - 轻量级 IoC 容器往往很轻量级,特别是与 EJB 容器相比时。对于在内存和 CPU 资源受限的计算机上开发和部署应用程序来说,这一点很有好处。

  8. Transaction management - Spring 提供了一致的事务管理接口,可以按比例缩减到本地事务(例如,使用单个数据库),也可以按比例放大到全局事务(例如,使用 JTA)。

Audience

本教程专为 Java 程序员设计,他们需要详细了解 Spring 框架及其架构和实际用法。本教程将带你达到中级专业水平,从此你可以向更高的专业水平迈进。

Prerequisites

在继续本教程之前,你应该对 Java 编程语言有深入的了解。还需要对 Eclipse IDE 有基本的了解,因为所有示例均使用 Eclipse IDE 编译。