跳转到主要内容

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

当您初次登录到 developerWorks 时,将会为您创建一份概要信息。您在 developerWorks 概要信息中选择公开的信息将公开显示给其他人,但您可以随时修改这些信息的显示状态。您的姓名(除非选择隐藏)和昵称将和您在 developerWorks 发布的内容一同显示。

所有提交的信息确保安全。

  • 关闭 [x]

当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

所有提交的信息确保安全。

  • 关闭 [x]

为 WebSphere Application Server Community Edition 开发 Spring 应用程序: 第 2 部分:使用 Spring 进行数据库连接管理

从 Spring 连接到数据库

Sunil Patil, 软件工程师, EMC
Sunil Patil 是 IBM India 的 Lotus 部门的一名软件工程师。他拥有四年的 J2EE 经验。

简介:  在本系列的第 1 部分,我们开发了联系人管理示例应用程序(允许添加、删除和修改联系人),并将其部署在 IBM® WebSphere® Application Server Community Edition(也称为 Community Edition)上。本文将说明如何使用 Spring 的连接管理基础设施。您将了解如何开发 ContactDAOJDBC.java 类,如何使用 Spring 自己的连接管理实现(以及颇受欢迎的连接池开源实现),以及如何方便地使用 WebSphere Application Server Community Edition 连接池实现。

查看本系列更多内容

发布日期:  2007 年 9 月 03 日
级别: 中级

访问情况 : 4887 次浏览
评论: 

开始之前

Spring 是 Spring Framework 网站提供的分层式 Java™ Platform Enterprise Edition (Java EE) 应用程序框架(有关链接,请参见参考资料)。Rod Johnson 在他的著名书籍 Expert one-on-one J2EE design and development 中将其开发为代码。目标是通过提供大多数 Java EE 应用程序所需的基础结构代码使 Java EE 项目开发变得更容易。您可以将 Spring 作为最佳实践实现池。

关于本教程

在本系列的第 1 部分,我们开发了一个简单的 Spring 模型-视图-控制器(Model-View-Controller,MVC)应用程序,并了解了一些 Jakarta Commons Logging 相关的问题(在 WebSphere Application Server Community Edition 中部署 Spring 应用程序时可能会遇到这些问题)。

本教程是本系列的第 2 部分,将继续第 1 部分的工作。如果您已阅读并完成了第 1 部分的操作,则应该已有了一个联系人管理示例应用程序,可以在其中添加、删除和修改联系人。出于演示目的,使用了 HashMap 来存储联系人记录,不过在实际中并不会真的使用 HashMap。在实际的应用程序中,将使用关系数据库管理系统(Relational DataBase Management System,RDBMS)来存储联系人信息,本教程将说明如何更改联系人管理应用程序,以使用 RDBMS,从而准备好投入实际使用。

企业应用程序的一个常见需求是,需要有效地管理数据库连接。Spring 可以帮助您解决这个问题,它提供了反向控制(Inversion of Control,IoC)基础设施,允许在依赖代码中注入连接管理实现。IoC 基础设施是一项重要的功能,因为它支持您转而使用更为高效的连接管理实现(甚至项目开发的稍后阶段也能这样做)。使用 Sping 的另一个优势在于,它提供了大量现成的 Bean,这些 Bean 将负责进行连接管理中的所有底层管道任务。

本教程的重点是使用 Spring 的连接管理基础设施。首先将了解如何开发 ContactDAOJDBC.java 类,该类与 RDBMS 进行通信,以存储联系人信息。然后我们将了解如何使用 Spring 自己的连接管理实现以及如何使用颇受欢迎的连接池开源实现(如 Apache Database Connection Pool (DBCP) 或 C3P0 ComboPooledDataSource 实现)。最后,我们将了解可如何方便地通过 Spring 使用 Community Edition 的连接池实现。


先决条件

要按照本教程中的说明进行操作,您应该对以下内容有基本的了解:

  • 面向对象的编程
  • Java EE 术语
  • XML 语义
  • JavaServer Pages (JSP) 标记、标记库和标记库描述符

本教程假设您是经验丰富的 Java EE 开发人员,并熟悉 Spring Framework 基础知识。另外还需要了解 MVC,但这不是必需的。尽管不需要高级知识,但是您应该熟悉如何使用 Spring BeanFactory 和 Spring 面向方面的编程(Aspect-Oriented Programming,AOP)。(如果您是 Spring Framework 新手,则 Arun Chhatpar 在 developerWorks 上发表的“Apache Geronimo 和 Spring 框架”系列文章是获得入门知识的优秀作品。)


系统要求

您需要下载几个必要的应用程序,才能按照本教程的说明进行操作并使用示例代码,其中包括:

  • JDK 1.4.2——Community Edition 目前使用 Sun Microsystems 实现 Remote Method Invocation (RMI) 的 Object Request Broker (ORB),所以需要 Sun 的 JDK。在本教程中,您将使用 JDK 1.4.2 来测试示例代码。
  • WebSphere Application Server Community Edition——本文中的示例代码是使用版本 1.1 测试的。如果您决定使用其他版本的 WebSphere Application Server Community Edition,则可能必须在 geronimo-web.xml 文件中进行某些更改。
  • Spring Framework——将此压缩文件与所有依赖项一起使用。注意:如果您没有下载带所有依赖项的 Spring 版本,那么必须手动下载其他必需的 JAR 文件。开发本文中的示例代码时,使用的是 Spring Framework 2.0 版。
  • Eclipse Web Tools Platform (WTP) 1.0.1——此开源项目为创建 servlets、JavaServer Pages (JSP) 组件和 Enterprise JavaBeans (EJB) 提供了方便您使用的向导,从而使 Java EE 开发变得更简单。它还为 JSP 和 XML 提供编辑器。请浏览参考资料部分,获得更多关于如何使用此工具的信息。
  • WebSphere Application Server Community Edition server adapter(以前称为 WebSphere Application Server Community Edition 的 Eclipse 插件)——此服务器适配器允许您在 Eclipse 内部与 Community Edition 交互。您可以执行一些操作,如启动或停止服务器,或以正常或调试模式进行启动。服务器适配器还允许您在服务器上运行或调试项目,只需右键单击一个项目并选择 Run on ServerDebug on Server即可。我认为此适配器解决了开源项目中的一个最大难题,这是其他开发工具不能解决的。

    建议您将 Eclipse Web Tools Platform 与 Community Edition 的 Eclipse 插件结合使用,并将其作为您的开发环境,但这不是必需的。您可以选用另一个编辑器。如果使用其他编辑器,您可以使用本示例附带的 Ant 构建脚本来构建源代码。

  • Apache Derby ——本教程中所示的应用程序使用 Apache Derby 作为 RDBMS,因为此数据库系统是免费的开源数据库。不过,并不要求必须使用 Apache Derby,您可以选择任意数据库。如果您选择其他数据库,则应该在此数据库内创建 CONTACT 表(如清单 1 中所示)。必须使用特定于您的数据库的 JDBC 参数。请按照以下步骤进行操作,以设置 Apache Derby:
    1. 转到 Apache Derby download 页,并下载最新的二进制版本。本教程中的示例代码均使用 Derby 的 10.2.2.0 版进行了测试。
    2. 下载此压缩文件后,将其提取到文件夹中(例如,c:\software\derby)并设置 DERBY_HOME 环境变量,使其指向此文件夹。
    3. 采用网络模式使用 Apache Derby。但由于 WebSphere Application Server Community Edition 已经使用了 Derby 网络服务器的缺省端口 (1572),因此需要使用其他端口。转到 <DERBY_HOME>/bin 文件夹,并发出命令 java org.apache.derby.drda.NetworkServerControl -p 1088。Derby 网络服务器将在端口 1088 上启动。
    4. 使用 ij.bat 命令创建测试数据库。首先运行此命令,以打开 ij 控制台。
    5. 在 ij 控制台内,执行命令
      connect "jdbc:derby://localhost:1088/ContactDB:create
                =true;user=dbadmin;password=not2tell";
      

      。这将在 Apache Derby 中创建数据库 ContactDB。
    6. 在 ij 控制台中运行 DDL,以在 ContactDB 数据库中创建 CONTACT 表(请参见清单 1)。

      清单 1. 用于创建 CONTACT 表的 DDL 清单
                                      
      CREATE TABLE CONTACT
        (CONTACTID INTEGER NOT NULL,
         FIRSTNAME VARCHAR(300),
         LASTNAME VARCHAR(300),
         EMAIL VARCHAR(300));
      	

  • 示例数据库现在已经准备好,并在其中创建了 CONTACT 表。接下来就可以开始开发实际的示例代码了!

1 页,共 8 | 后一页

评论



static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=WebSphere, Open source
ArticleID=252858
TutorialTitle=为 WebSphere Application Server Community Edition 开发 Spring 应用程序: 第 2 部分:使用 Spring 进行数据库连接管理
publish-date=09032007
author1-email=sunilpatil@in.ibm.com
author1-email-cc=

标签

Help
使用 搜索 文本框在 My developerWorks 中查找包含该标签的所有内容。

使用 滑动条 调节标签的数量。

热门标签 显示了特定专区最受欢迎的标签(例如 Java technology,Linux,WebSphere)。

我的标签 显示了特定专区您标记的标签(例如 Java technology,Linux,WebSphere)。

使用搜索文本框在 My developerWorks 中查找包含该标签的所有内容。热门标签 显示了特定专区最受欢迎的标签(例如 Java technology,Linux,WebSphere)。我的标签 显示了特定专区您标记的标签(例如 Java technology,Linux,WebSphere)。