Welcome 微信登录

首页 / 软件开发 / JAVA / 使用Java Persistence API与JavaServer Faces开发Web应用

使用Java Persistence API与JavaServer Faces开发Web应用2011-05-25 IBM Thomas F Mutdosch当您需要应用程序支持数据时, Java™Persistence API (JPA)为使 用关系型数据库提供了一个简单的方法。尽管过去 JPA 一直与 Enterprise Java™Beans (EJBs)一起使用,但是 JPA 与 Web 应用程序一起直接使用 也十分方便。本篇文章描述了 IBM® Rational® ApplicationDeveloper for WebSphere® Software V7.5 提供的简化程序模型与工具,它们能方便地 构建使用 JPA 的 Web 应用程序。注意:本篇文章基于 IBM Rational Application Developer V7.5 Open Beta 版。

通过本文的姐妹篇 “使用 IBM Rational Application Developer V7.5 中的 JPA,Ajax 与 Dojo 工具开发 Web 2.0 应用程序”,了解怎样使用 IBM Rational Application Developer V7.5 中的 JPA、Ajax 和 Dojo 工具,来创建一个端到 端的 Web 应程序。

您还可以查看 “产品演示:在 IBM Rational Application Developer V7.5 中使用 JPA 支持”,本次演示将介绍 IBM Rational Application Developer V7.5 新特性之一,对 Java 持久性 API (JPA, Java Persistence API) 的支持。

Java™Persistence API (JPA)是使用关系型数据库的 Java 模型对象支持的规格说明。本篇文章给您一 个关于 JPA 的概述,并向您展示它怎样在 Web 应用程序环境下运行,以及怎样 使用 Rational Application Developer V7.5 应用 Java™Server Faces (JSF)来构建 JPA Web 应用程序。

JPA 的概述

JPA 是一个用于 对象关系映射以及数据支持的简化程序模型。数据支持确保检索数据与更新数据 的应用程序,在后端数据库的当前状态下,被同时保存。在过去,这是通过使用 Java Database Connectivity (JDBC) APIs 与 其他的数据框架来完成的,通 常这些步骤相当繁琐,并涉及到书写复杂的查询语句,以添加或修改数据。

通过使用您数据库表,被访问实体的 Java 代表,以及提供一系列的 APIs 以 支持和查询数据,JPA 简化了这个过程。

实体

实体对象是 JPA 应用程序中使用的主要模型。一个实体是数据库中为表格建 模的 POJO(Plain Old Java Object)。它包含了与表格列相对应的属性,并允 许应用程序直接与数据库的概念模型相联系。

范例

这是一个包含 deptname 列的名为 Department 的数据库。在应用程序中,有 一个相对应的名为 Department 的 Java 类,还包含了一个名为 deptname 的区 域名,以及 正确的 get 与 set 方法。图 1 显示出了整个的 Department 表, 以及相应的实体类。 图 1. Department 表与实体

映射一个实体与关系数据库的信息,例如识别主要关键字和关系,可以使用 Java 注释在一个实体类中直接指定。您也可以选择,在一个单独的映射配置文件 中指定这些映射。JPA 在任何可能的情况下,为这些数据映射使用一般意义下的 默认值。这就在您的应用程序中消除了大量的错误代码和繁琐的映射信息。例如 ,假设一个名为 Department 的实体类,与一个名为 Department 的数据库表相 映射。您不需要使用注释或者配置文件,来详细定义该映射,除非您需要更改默 认值。