Java™ 服务器应用程序的创建并不一定困难而烦琐。在轻量级 Spring 框架的第二代中添加了一大批特性,即使是新的服务器应用程序开发人员也能够轻松上手。其关键增强之一就是 Spring 2 与 Java 持久性 API (JPA)的集成,这是企业 JavaBean(EJB)3.0 规范的基石。在这份教程中,您将学习如何用 Spring 2 框架从头开始创建服务器应用程序。
开始之前
近 十年来,构建健壮、可维护的服务器端 Java 应用程序的 “正确” 方式一直是 Java 2 企业版(J2EE)平台的专属领域。J2EE 应用程序用企业 JavaBean(EJB)技术构建,运行在方便部署并提供丰富的容器服务(例如数据库连接和池的管理)的服务器之上。这些服务器还通过对重要特性(例如 安全性和事务)提供部署时声明式控制带来了附加价值。虽然功能丰富,J2EE 开发过程包含了许多烦琐和重复的任务,还要创建和维护大量的源代码文件。
许多轻量级 Java 框架声称简化了服务器应用程序开发,但论及成熟和流行的程度,Spring 框架无可匹敌(请参阅 参考资料)。 Spring 目前的版本是 Spring 2,从第 1 天起,其设计目的就在于简化服务器应用程序的构建过程。Spring 的开发没有采用一体化的容器角度,而是为应用程序的需求提供恰到好处的支持,因此不会因包罗万象的容器环境造成负担。Spring 消除了代码膨胀:完全可以在容器之外编写和测试业务对象,从而让业务对象代码保持简单、可测试、可维护和可重用。
随 着 Java EE 5 和 EJB 3.0 的出现,J2EE 社区准备好了迎接 Spring 开发人员社区。EJB 3.0 支持轻量级 POJO(Plain Old Java Objects,老式普通 Java 对象)作为 EJB 组件的概念,并引入了 Java 持久性 API (JPA),JPA 是可以在容器外部运行的持久性机制。这种持久性机制自动实现业务对象和外部关系数据库之间的信息移动。Spring 框架的版本 2 继续了自己的发展,也利用 JPA 作为持久性机制。
在这份教程中,您将使用 Spring 2 和 JPA 持久性。将用 Spring 2 框架创建一个服务器应用程序,完成时可以访问 DB2 Express-C 数据库。Eclipse IDE 可以方便 Java 应用程序的开发并促进对 Spring 2 框架的研究。
本教程采用按编码学习这种纯粹、简单的方式,目的是在尽可能短的时间内,指导您了解 Spring 2 框架的使用和应用程序。您将在 Spring 2 框架的协助下,从头开始逐步构建一个 Web 应用程序。
这份教程并不想试图覆盖 Spring 2 的全部特性和选项。而是重点关注了使用 Spring 开发服务器应用程序的一种切实有效的方式。鼓励您参考其他 Spring 2 资源获得与这个框架有关的更高级的应用程序和技术(请参阅 参考资料)。
您将经历一个完整的 “从概念到应用程序” 的周期,包括:
- 执行域分析
- 为业务对象和服务编写代码
- 对业务对象进行单元测试
- 使用 Sprint JPA 在不带来过高成本的情况下为业务对象添加数据访问代码
- 用 Spring DAO(数据访问对象)实现服务
- 针对 DB2® Express-C 为服务编写集成测试代码
- 为基于 Spring 模型-视图-控制器(MVC)的用户界面创建控制器
- 为用户界面设计视图
- 创建应用程序的可部署 WAR 文件
- 在 Apache Tomcat 服务器上配置和部署应用程序
学完本教程后,您应能够理解 Spring 2 框架的工作原理以及它能为创建高度组件化、可维护的 Web 应用程序带来怎样的帮助。在构建这样一个应用程序的过程中,您将获得实践经验,还能把这里学到许多技术应用到日常的开发任务中。
您应当熟悉基本的面向对象设计概念和使用 Java SE 5 的 Java 开发,包括泛型。您还应当熟悉关系数据库概念,对于如何在 DB2 Express-C 中设置新数据库也应当有基本的了解。
您还应熟悉测试术语,包括单元测试和集成测试。最好有测试框架(例如 JUnit)方面的实际经验,但并非必需。
您应当有 Eclipse 方面的实际经验,能够在 Eclipse 内创建新 Java 项目、编译 Java 代码和调试项目。
要试验这份教程中的工具和示例,硬件配置需求为:至少带有 512MB 内存(推荐 1GB)的系统。
需要安装以下软件:
- Sun 的 JDK 5.0_Update 7 或更新版本 或 IBM® Developer Kit for the Java 5 platform 版本。
- Spring framework 2.0。这份教程中的代码已经在 Spring 2.0 RC 2 上测试过。请选择 “带有依赖项” 的发布版。这可以省去从不同站点进行的许多额外下载,因为它包含许多需要的开源项目的二进制代码。
- 某个版本的 Tomcat 5.5 server。请从服务器上选择 ZIP 文件下载,并把它解压缩到选中的目录。这份教程的代码已经在 Tomcat 5.5.17 上测试过。
- DB2 Express-C (8.2.4 以上版本)。
- Eclipse 3.2 或更新版本,包括 Web 工具平台(WTP)1.5 以上版本。
- JPA reference implementation。请按照这份教程中的 编写针对 RDBMS 的 DAO 集成测试 中的完整安装指导进行。
转载自:https://www6.software.ibm.com/developerworks/cn/education/java/j-spring2/index.htm
