Spring 3.x 权威开发指南:实施Java EE 6 的利器

从2003 年开始,开源Spring 一直在同Java EE 携手走来。Spring 2.0 之前(包括1.x、2.0 版本)的版本一直在跟进J2EE 1.4-的发展,而Spring 2.5 跟进Java EE 5,Spring 3.0 开始跟进Java EE 6 的发展,而Spring 3.1 全面跟进Java EE 6,包括Java SE 7 集成支持。当然,这种跟进的深度和广度远远超越了Java EE 本身。

Java EE 被企业生产环境广泛采纳,这在很大程度上要归功于这样几方面的因素。

其一,Java 本身的跨平台能力,即其可移植性强。

其二,Java EE 服务器内置了大量的重要容器服务,比如事务服务、JNDI 服务及连接池服务,这些服务可供企业应用选用。

其三,开发者可以基于Java EE API 研发企业应用,并部署到企业生产环境中。然而,Java EE 暴露给开发者的客户视图存在重大缺陷,尤其是应用同Java EE 容器打交道的过程很复杂,加上直接基于Java EE API 研发企业应用的生产效率低下(指研发效率,不是运行效率),并且非常容易出问题,比如数据库连接泄漏。自Spring 诞生以来,这些问题已经成为了历史。Spring针对Java EE 容器服务及Java EE API 提供了抽象和集成支持,进而得到开发者的广泛拥护。

为更好地针对Java EE 容器服务及Java EE API 提供抽象和集成支持,Spring 提供了由控制反转容器和AOP(面向切面编程)组成的元框架。注意,这一元框架能够被使用到任
意场合,而不只是在Java EE 容器中。