JPA_全面讲解.docx

  1. 1、本文档共106页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JPA_全面讲解

1 JPA 批注参考版本: 5/12/06作为 Java 企业版 5 (Java EE 5) Enterprise Java Bean (EJB) 3.0 规范的组成部分,Java 持续性 API (JPA) 显著简化了 EJB 持续性并提供了一个对象关系映射方法,该方法使您可以采用声明方式定义如何通过一种标准的可移植方式(在 Java EE 5 应用服务器内部以及 Java 标准版 (Java SE) 5 应用程序中的 EJB 容器外部均可使用)将 Java 对象映射到关系数据库表。在 JPA 之前,Java EE 应用程序将持续类表示为容器管理的实体 bean。使用 JPA,您可以将任何普通的旧式 Java 对象 (POJO) 类指定为 JPA 实体:一个应使用 JPA 持续性提供程序的服务将其非临时字段持久保存到关系数据库(在 Java EE EJB 容器的内部或在简单 Java SE 应用程序中的 EJB 容器的外部)的 Java 对象。使用 JPA 时,可以使用批注配置实体的 JPA 行为。批注是一种使用元数据修饰 Java 源代码的简单表达方法,它编译为相应的 Java 类文件,以便在运行时由 JPA 持续性提供程序解释以管理 JPA 行为。例如,要将 Java 类指定为 JPA 实体,请使用 /p65@Entity 批注,如下所示:@Entitypublic class Employee implements Serializable { ...}您可以有选择地使用批注来修饰实体类以覆盖默认值。这称作按异常进行配置 (configuration by exception)。本参考广泛引用了 /aboutJava/communityprocess/pfd/jsr220/index.htmlJSR-220 Enterprise JavaBean 版本 3.0 Java 持续性 API 规范,以按类别汇总批注信息(请参阅/p65表 1-1),并解释了何时以及如何使用这些批注来自定义 JPA 行为,以满足应用程序的需要。有关详细信息,请参阅:/p65批注索引/javaee/5/docs/api/index.html?javax/persistence/package-summary.html完整的 JPA 批注 Javadoc表 1-1 按类别划分的 JPA 批注类别说明批注实体默认情况下,JPA 持续性提供程序假设 Java 类是非持续类,并且仅当使用此批注对其进行修饰的情况下才可用于 JPA 服务。使用此批注将普通的旧式 Java 对象 (POJO) 类指定为实体,以便可以将它用于 JPA 服务。要将类用于 JPA 服务,必须将该类指定为 JPA 实体(使用此批注或 orm.xml 文件)。/p65@Entity数据库模式属性默认情况下,JPA 持续性提供程序假设实体名称对应于同名的数据库表,且实体的数据成员名称对应于同名的数据库列。使用这些批注覆盖此默认行为,并微调对象模型与数据模型之间的关系。/p65@Table/p65@SecondaryTable/p65@SecondaryTables/p65@Column/p65@JoinColumn/p65@JoinColumns/p65@PrimaryKeyJoinColumn/p65@PrimaryKeyJoinColumns/p65@JoinTable/p65@UniqueConstraint身份默认情况下,JPA 持续性提供程序假设每个实体必须至少有一个用作主键的字段或属性。使用这些批注指定以下项之一:一个 @Id多个 @Id 和一个 @IdClass一个 @EmbeddedId还可以使用这些批注微调数据库维护实体身份的方式。/p65@Id/p65@IdClass/p65@EmbeddedId/p65@GeneratedValue/p65@SequenceGenerator/p65@TableGenerator直接映射默认情况下,JPA 持续性提供程序为大多数 Java 基元类型、基元类型的包装程序以及 enums 自动配置一个 Basic 映射。使用这些批注微调数据库实现这些映射的方式。/p65@Basic/p65@Enumerated/p65@Temporal/p65@Lob/p65@Transient关系映射JPA 持续性提供程序要求您显式映射关系。使用这些批注指定实体关系的类型和特征,以微调数据库实现这些关系的方式。/p65@OneToOne/p65@ManyToOne/p65@OneToMany/p65@ManyToMany/p65@MapKey/p65@OrderBy组合默认情况下,JPA 持续性提供程序假设每个实体均映射到它自己的表。使用这些批注覆盖

文档评论(0)

haihang2017 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档