蜀国最强阵容怎么极限:使用 WebSphere Application Server Community Edition 开发 JPA 应用程序

来源:百度文库 编辑:九乡新闻网 时间:2024/05/03 06:32:03
WebSphere, JPA
使用 JPA 方便实现数据持久性
级别: 中级
Phani Madgula , 软件开发人员, IBM
2008 年 9 月 24 日
通过 Java? Persistent API (JPA),能方便地设计和开发 JEE 应用程序的持久部分的功能。本教程将带您了解这个新 API 的所有细节,并将使用 Eclipse 和 WebSphere? Application Server Community Edition 开发一个示例应用程序。WebSphere Application Server Community Edition 和 Eclipse 都可以免费下载,因此只需数分钟您就可以着手使用了。
在本教程中
本教程将向您介绍如何用 JPA 开发 WAS CE 目标平台下的 Java EE 5 应用。我们将在进行 Web 应用程序开发的过程中演示 JPA 的各个方面。我们将结合使用 Eclipse 集成开发环境(Integrated Development Environment,IDE)和用于 Eclipse 的 Community Edition 插件(也称为 Web Tools Platform (WTP) 服务器适配器)来开发、部署和运行此应用程序。本教程针对希望快速了解如何将 JPA 作为其应用程序的持久层使用的开发人员。教程中包括以下内容:
在 Eclipse IDE 中创建 JPA 项目和生成持久类
通过 persistence.xml 配置持久单元
将持久单元打包在 Web 应用程序中
在 Community Edition 部署计划中配置持久单元
部署 Web 应用程序
运行 Web 应用程序
预备知识
您应该了解数据库概念,而且在 Java 编程方面应该极为熟练。了解 Java EE 5 概念和 Annotation 将会帮助您明确本教程的上下文。您应该具有使用 Eclipse 之类 IDE 的经验。因为我们将手动修改 XML 配置文件(我们要进行一些全手动编程!),因此必须了解如何为应用服务器编写部署计划。
为了开发、部署和运行此应用程序,需要以下环境:
IBM Java SDK v1.5.0 SR7 或更高版本
Eclipse v3.3.1,带 WTP v2.0.1
用于 Community Edition v2.1 的 WTP 服务器适配器
Community Edition v2.1
DB2 Express v9.5
学习时间
2 小时
格式
html, pdf
Introduction
JPA 是用于管理持久性和对象/关系映射的 Java API。此 API 既可用于 Java EE 5 环境中,也可用于独立 Java SE 环境中。它提供了使用 Java 域模型来管理关系数据库的对象/关系映射工具。它支持使用 Java Annotation 或 XML 文件配置进行基于 POJO 的编程模型。
JPA 提供了标准映射定义(通过 Annotation 或 XML)和标准运行时 API 及对象级查询语言 (JPQL)。JPA 是 EJB 规范和 Java EE 5 平台的一部分,但也可以在 Java SE 环境中使用。Enterprise JavaBeans 3.0 支持此持久性 API 和查询语言。JPA 规范已经在 Java Community Process Program 中纳入了 JSR-220 进行开发。
JPA 极大地减少了开发应用程序的持久性部分所需编程工作,因为其中允许使用 Java 对象进行基于 POJO 的编程模型,可将复杂的样板化代码与应用程序逻辑分离。通过 JDBC? API 连接到 RDBMS 数据存储区的 Java 应用程序需要开发用于连接管理、事务管理、查询和通过结果集的数据检索的大量代码。通常,所有这些代码都与应用程序逻辑交织在一起,从而使得应用程序维护有些困难。通过 JPA,所有这些样板化代码都通过 Annotation 或 XML 文件委托给 JPA,从而保留了清楚的应用程序逻辑。JPA 提供:
标准映射定义(通过 Annotation 或 XML)
标准运行时 API
对象级查询语言 (JPQL)
WebSphere? Application Server, Community Edition v2.1 是基于 Apache Geronimo v2.1 版本的轻量级应用服务器。在本教程中,我们将 WebSphere Application Server, Community Edition v2.1 简称为 Community Edition。Community Edition 还包括很多其他缺陷修复,并拥有 IBM 提供的世界级支持。您可以免费下载服务器的二进制映像。这是 Java EE 5 Apache Geronimo v2.1 的完全认证服务器,因此 Community Edition 使用 OpenJPA 作为其 JPA 实现。
OpenJPA 是 Apache Software Foundation 的 Java EE 持久性项目。它是 Enterprise Java Beans 3.0 规范持久性部分的开源实现。它提供功能丰富的 JPA 实现,能够供作为独立 POJO 持久层使用,或集成到任何兼容 EJB 3.0 的容器。该项目提供很多自定义配置,这意味着可以方便地在很多轻量级框架中使用。
0


gyb98 开通了自己的个人主页
回复 引用报告
一路向北

八星级会员

社区金钱
2460 W币
专家积分
160 分
最后登录
2011-3-3

 发表于 2008-9-26 16:06 | 只看该作者
2011年初巨献!《大中型企业IT架构管理入门》独家发布 
在 Eclipse IDE 中创建 JPA 项目和生成持久类
在本部分,我们将执行以下任务。
安装 Community Edition v2.1
设置 Eclipse 开发环境
设置 Derby 数据库
设置 DB2 Express 数据库
在 Eclipse IDE 中设置数据源
创建 Db2AccountUnit JPA 项目
创建 DerbyAccountUnit JPA 项目
安装 Community Edition v2.1
可以从 developerWorks 下载 Community Edition v2.1 安装程序(请参见“参考资料”)。将服务器程序下载到您的计算机上,并按照 Community Edition v2.1 文档中的说明进行操作。在本教程中,我们使用 指代 Community Edition 安装目录。Community Edition 安装程序附带了 IBM Java SDK1.5.0。此 JDK 将供安装程序和服务器运行时使用。有关建议平台和兼容平台的更多信息,请参见支持站点。
设置 Eclipse 开发环境
访问 Community Edition v2.1 文档并单击左侧的 Development 链接查看关于常见开发任务部分的内容。按照 Using Eclipse 部分给出的说明在本地计算机上设置 Community Edition 的 Eclipse 开发环境。您可以使用 Eclipse 更新管理器来下载和安装 Community Edition Eclipse 插件;或者下载 deployable.zip 并将此 zip 文件的内容覆盖到 Eclipse 目录中。
浏览文档的其他部分,以了解如何在 Eclipse 中创建 Community Edition 服务器实例、如何将 Java EE5 资产部署到服务器上等等。在 Eclipse 中创建指向 目录的 Community Edition 服务器实例。完成此任务后,您应该在 Eclipse 看到已创建的 Community Edition 服务器实例,如图 1 中所示:
图 1. Eclipse 中的 Community Edition 服务器

设置 Derby 数据库
在此部分,我们将在 Derby 中创建 ACCOUNTDB 数据库。我们还将为我们的应用程序创建包含一些示例行的 DERBYACCOUNT 表。我们将使用 Community Edition Web 管理控制台来执行此任务。
打开命令窗口,并提交以下命令,以启动服务器:
/bin/startup.[bat|sh]
打开浏览器窗口并输入此 URL,以打开管理控制台:
http://localhost:8080/console
输入用户名 system 和密码 manager,以登录到 Web 控制台。
在 Console Navigation Portlet 上,选择 Embedded DB => DB Manager,以打开 DB Viewer 和 Run SQL Portlet。
在 Create DB 字段中输入 AccountDB 并单击 Create 按钮,如图 2 中所示。此步骤会创建 AccountDB 数据库。数据库文件的位置为 /var/derby/AccountDB。 图 2. 创建数据库

在 Use DB 字段中,选择 AccountDB 数据库,并在 SQL Command 字段中输入以下 SQL 语句:
create table DERBYACCOUNT (ACCNO integer, OWNER varchar(100), DATE_OPEN date, ACCOUNT_TYPE varchar(20), BALANCE decimal(15,2));
单击 Run SQL 按钮,以创建 DERBYACCOUNT 表。
在 Use DB 字段中,选择 AccountDB 数据库,并在 SQL Command 字段中输入以下 SQL 语句:
insert into DERBYACCOUNT values (1, 'Jane', '10/10/2008', 'SAVINGS', 10000);
insert into DERBYACCOUNT values (2, 'Monica', '10/10/2008', ‘CHECKING’, 20000);
单击 Run SQL 按钮,以在 DERBYACCOUNT 表中插入两行。
最终的表格和插入的行应该与图 3 所示类似: 图 3. 包含插入行的表

xfxf521 开通了自己的个人主页
回复 引用报告
一路向北

八星级会员

社区金钱
2460 W币
专家积分
160 分
最后登录
2011-3-3

 发表于 2008-9-26 16:10 | 只看该作者
设置 DB2 Express 数据库
在此部分,我们将在 DB2 中运行的 SAMPLE 数据库中创建 DB2ACCOUNT 表。您可以使用 DB2 控制中心或 DB2 命令提示符执行此任务。确保已经创建了 DB2 用户帐户 DB2ADMIN 并向其授予了足够的权限,能够访问数据库。
在计算机上安装 DB2 Express v9.5。缺省情况下,安装进程会创建 SAMPLE 数据库。
使用控制中心或 DB2 命令提示符创建具有清单 1 中所示的列定义的 DB2ACCOUNT 表。
清单 1:D2CACCOUNT 表列定义
CREATE TABLE "DB2ADMIN"."DB2ACCOUNT" (
"ACCNO" INTEGER NOT NULL ,  "OWNER" VARCHAR(100) NOT NULL ,
"DATE_OPEN" DATE NOT NULL ,  "ACCOUNT_TYPE" VARCHAR(20) NOT NULL ,
"BALANCE" DECIMAL(15,2) NOT NULL ) ALTER TABLE "DB2ADMIN".
"DB2ACCOUNT" ADD CONSTRAINT "DB2ACCOUNT_PRIMARYKEY"
PRIMARY KEY ("ACCNO");
复制代码
我们将创建一个 Web 应用程序,以使用 JPA 执行上表中的数据处理语言 (DML) 操作。
最终的表应该与图 4 中所示类似: 图 4. 最终的表结构
 在 Eclipse IDE 中设置数据源
在此部分,我们将在 Eclipse 中创建 WASCEDerby 和 DB2 数据源。WASCEDerby 数据源连接到在嵌入 Derby 实例中创建的 ACCOUNTDB 数据库。DB2 数据源连接到在 DB2 中创建的 SAMPLE 数据库。您可以将这些数据源关联到 JPA 项目,从而为基础表生成持久类。
使用以下命令关闭 Community Edition 服务器:
/bin>shutdown.[bat|sh] –user system –password manager
单击 Eclipse 中的 Data Source Explorer 选项卡,右键单击 Databases 并单击 New,如图 5 中所示: 图 5. 在 Eclipse 中创建新数据源

在 New Connection Profile 向导中,选择 Derby Embedded Database 并单击 Next 按钮,如图 6 中所示: 图 6. New Connection Profile 向导

在 Derby Embedded Database 向导中,在 Name 字段中输入 WASCEDerby 并在 Description (optional) 中输入任意描述(如图 7 中所示),然后单击 Next 按钮。 图 7. Derby Embedded Database 向导

在 Specify a Driver and Connection Details 向导上,单击 Select a driver from the drop-down 框右侧的按钮,以配置驱动程序(图 8): 图 8. Driver and Connection Details 向导

在 Driver Definitions 向导中,选择 10.2 并单击 Add 按钮。 图 9. Driver Definitions 向导

在 New Driver Definition 向导中,选择 Derby Embedded JDBC Driver 并选中 Edit New Driver Definition immediately 框。单击 OK 按钮。 图 10. New Driver Definition 向导

在 Edit Driver Details 向导中,执行以下步骤:从 Driver File(s) 框中删除任何现有的 JAR 文件并
添加此 JAR 文件: repository/org/apache/derby/derby/10.2.2.0/derby-10.2.2.0.jar.
在 Properties 框中按照以下所示更改 Connection URL、Database Name 和 User ID(如图 11 中所示)。请注意,C:\ibm\wasce-server-2.1.0.0 是位于我的本地系统上的 。单击 OK。
Connection URLjdbc:derby:C:\ibm\wasce-server-2.1.0.0\var\derby\AccountDB
Database NameAccountDB
User IDAPP
gudujianxuehu 开通了自己的个人主页
回复 引用报告
一路向北

八星级会员

社区金钱
2460 W币
专家积分
160 分
最后登录
2011-3-3

 发表于 2008-9-26 16:13 | 只看该作者
图 11. Edit Driver Details 向导

单击 OK 逐个关闭所有已打开的向导,直到显示 Specify a Driver and Connection Details 向导为止。单击 Next 按钮,并在下一个屏幕上单击 Finish 按钮,如图 12 中所示: 图 12. Specify a Driver and Connection Details 向导

这将创建 WASCEDerby 数据源。类似地,我们需要遵循相同的步骤在 Eclipse 中创建 DB2 数据源。创建 DB2 数据源时,请将数据库命名为 SAMPLE 并选择以下驱动程序库( 是 DB2 v9.5 Express 的安装目录):
/java/db2jcc.jar
/java/db2jcc_license_cu.jar
最后,输入以下 DB2 数据源连接详细信息(另请参见图 13):
NameDB2
DescriptionDB2
Auto connectfalse
Driver nameIBM DB2 Universal
User nameDB2ADMIN
URLjdbc:db2://localhost:50000/SAMPLE
图 13. DB2 数据源连接详细信息

右键单击所创建的每个数据源,并单击 Connect,从而连接到 SAMPLE 和 ACCOUNTDB 数据库(图 14): 重要:从 Eclipse 使用嵌入驱动程序连接到 ACCOUNTDB 数据库时,必须关闭 Community Edition 服务器。如果服务器在运行,并使用嵌入驱动程序连接到了此数据库,Eclipse 将在尝试连接到同一数据库时引发错误。
图 14. 连接到数据源

阅读全部内容请访问:
https://www6.software.ibm.com/developerworks/cn/education/websphere/0807_madgula/section2.html
温馨提示:访问此教程需要dw账号登录,请先注册账号后进行学习。