转载

快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库

这个由 3 部分组成的教程系列将介绍如何使用 IBM® Rational® Application Developer for WebSphere Software、Java Persistence API (JPA)、Enterprise JavaBeans (EJBs)、REST Web 服务和(一个针对富 Web 2.0 前端的)Dojo Toolkit 从头构建一个多层 Web 应用程序。您最终将得到一个全功能的 Web 应用程序,它在一个表中显示数据,用户可双击任何单元格来编辑数据。

该应用程序架构使用 REST 服务来将 UI 与服务器分离,它还使用 EJB 和 JPA 来提供一个正确分层的企业应用程序。这些层中的一部分对示例应用程序不是必需的,但我们的目标是提供一个架构完善的示例,可针对更具挑战的问题领域而进行扩展。

本教程采取的总体步骤包括:

  1. 构建数据库(第 1 部分)。
  2. 创建数据访问和 EJB 层(第 2 部分)。
  3. 构建 REST 服务来显示和修改数据,构建一个富 Web 2.0 接口来使用这些服务(第 3 部分)。
  4. 将该应用程序部署到 IBM Bluemix 平台即服务(第 3 部分)。

这个架构概览图显示了需要构建的 5 个组件:Web 层中的富 Web 页面和 Web 服务;应用层中的 EJB 和 JPA 实体;以及数据层中的数据库表:

快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库

先决条件

开始之前:

  1. 安装 Rational Application Developer for WebSphere Software 9.1.1,确保包含了 Liberty 运行时和 Bluemix 特性。有一个试用版 可供下载。
  2. 注册一个 Bluemix 帐户。可使用一个免费试用版。

在 Bluemix 上创建一个数据库服务器

在 Bluemix 上创建一个用于开发的数据库服务(以便您不必为本教程安装数据库软件和创建本地数据库服务器):

  1. 在浏览器中,登录到 Bluemix 。
  2. 在 Bluemix 目录的 Boilerplates 部分中,单击 Java DB Web Starter快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库
  3. 在 Java DB Web Starter 创建页面中,在右侧指定您应用程序的名称(例如 sracustomerapp )。此名称组成您的 Bluemix 应用程序的 URL 的一部分,所以它必需是惟一的: 快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库
  4. 单击 CREATE 。您将看到一个页面显示了您应用程序的详细信息,片刻之后,就会看到该应用程序已启动: 快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库 您现在已有一个 Liberty 运行时和一个数据库服务器在云中运行,等待您部署应用程序。
  5. 要获得该信息,您需要连接到数据库,单击 SQL Database 服务磁贴上的 Show Credentials快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库
  6. 从凭据部分中记下 dbhostnameportusernamepassword 值。
  7. 打开 Rational Application Developer。您将在这里开始构建该应用程序。

设计和构建数据库

现在,借助 Rational Application Developer,您将创建一个数据库表并生成一些测试数据:

  1. 在 Rational Application Developer 中,切换到 Data 透视图。(选择右上角的透视图图标,选择 Data ,然后单击 OK 。)如果提示 Enable Activities,选择全部活动并单击 OK
  2. 在 Data Source Explorer 视图中,选择 Database Connections ,右键单击并选择 New... 。选择 DB2 for Linux, UNIX and Windows 作为数据库管理器。然后指定来自您的 Bluemix 数据库服务凭据的数据库名称、主机名、用户名和密码。确保您选择了 Save password 选项: 快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库
  3. 单击 Test Connection ,如果连接成功,则单击 Finish
  4. 创建一个名为 CustomerDBDesign 的新数据设计项目:选择 File > New > Data Design Project ,将名称更改为 CustomerDBDesign ,然后单击 Finish快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库
  5. 创建一个新的物理数据模型,您将在其中设置所需的数据库表:在 Data Project Explorer 视图中,右键单击 CustomerDBDesign 项目并选择 New > Physical Model 。在向导中,将文件名更改为 Customer Physical Model 。将 Database 设置为 DB2 for Linux, UNIX and Windows ,将 Version 设置为 V10.5快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库
  6. 单击 Finish
  7. 重命名模式:在 Data Project Explorer 中,选择 Schema ,然后在 Properties 视图中,将名称更改为 Bluemix SQL 数据库用户名(例如 user01145 )。
  8. 创建一个名为 Customer 的表:如果 Diagram1 还未打开,则从 Data Project Explorer 中双击它来打开它。单击绘图界面,然后在弹出窗口中单击 add-table 图标: 快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库 将该表重命名为 Customer
  9. 单击该表来获得列弹出窗口: 快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库 添加一个主键。将主键重命名为 CustNo
  10. 使用列弹出窗口来添加其他 3 个常规列,分别命名为 NameAddressCountry快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库
  11. 设置列类型:选择该表,然后在 Properties 视图中选择 Columns 选项卡。单击各个列类型来更改它们。将 CustNo 的数据类型设置为 INTEGER ,将其他列设置为 Varchar 30快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库
  12. 保存该模型 ( Ctrl-S or File > Save )。
  13. 将该模式和表正向工程为数据库:在 Data Project Explorer 中,选择该模式。右键单击并选择 Generate DDL 。在第一页上,清除 Quoted identifiers 复选框: 快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库 单击 Next
  14. 在 Objects 页面上,清除 Schemas 复选框。在默认模式下,将为您的数据库用户创建该表。
  15. 在 Save and Run DDL 页面上,选择 Run DDL on server 。单击 Next
  16. 在 Connections 页面上,选择 SQLDB 连接。单击 Next
  17. 单击 Finish
  18. 在 SQL Results 视图中,确认创建成功: 快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库
  19. 现在创建一些数据:在 Data Source Explorer 视图中,选择 SQLDB 连接,右键单击,然后选择 refresh 。在 Schemas 文件夹中,您现在应看到您的 SQL 数据库用户名。
  20. 打开 Tables 文件夹。您应看到 CUSTOMER 表: 快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库
  21. 右键单击 CUSTOMER ,选择 Data > Edit ,添加一些行,然后保存 ( Ctrl-S ): 快速构建一个功能丰富的三层 Web 应用程序,第 1 部分:构建数据库

后续步骤

您已经创建了一个托管在 Bluemix 上的数据库,并在其中填充了一些测试数据。现在,请继续阅读第 2 部分,您将在其中创建一个包含 JPA 实体 bean、JPA 管理器 bean 和 EJB 的应用层。

正文到此结束
Loading...