4.1 JPA的概念以及它和hibernate之间的关系

持久层总图

image.png

1. JPA的概念以及它和hibernate之间的关系

JPA:java persistence api(java持久化规范)
是SUN公司推出的一套基于ORM的规范。hibernate框架中提供了JPA的实现。

JPA通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体[对象持久化]到数据库中。

1.1 JPA的优势

标准化

JPA 是 JCP 组织发布的 Java EE 标准之一,因此任何声称符合 JPA 标准的框架都遵循同样的架构,提供相同的访问[API],这保证了基于JPA开发的企业应用能够经过少量的修改就能够在不同的JPA框架下运行。

容器级特性的支持

JPA框架中支持大数据集、[事务]、并发等容器级事务,这使得 JPA 超越了简单持久化框架的局限,在企业应用发挥更大的作用。

简单方便

JPA的主要目标之一就是提供更加简单的编程模型:在JPA框架下创建实体和创建Java 类一样简单,没有任何的约束和限制,只需要使用 javax.persistence.Entity进行注释,JPA的框架和接口也都非常简单,没有太多特别的规则和设计模式的要求,开发者可以很容易的掌握。JPA基于非侵入式原则设计,因此可以很容易的和其它框架或者容器集成。

查询能力

JPA的查询语言是[面向对象]而非面向数据库的,它以面向对象的自然语法构造查询语句,可以看成是Hibernate HQL的等价物。JPA定义了独特的[JPQL](Java Persistence Query Language),JPQL是EJB QL的一种扩展,它是针对实体的一种查询语言,操作对象是实体,而不是关系数据库的表,而且能够支持批量更新和修改、JOIN、GROUP BY、HAVING 等通常只有 SQL 才能够提供的高级查询特性,甚至还能够支持[子查询]。

高级特性

JPA 中能够支持[面向对象]的高级特性,如类之间的继承、[多态]和类之间的复杂关系,这样的支持能够让开发者最大限度的使用面向对象的模型设计企业应用,而不需要自行处理这些特性在关系数据库的持久化。

2. JPA的环境搭建和入门案例

3. JPA的CRUD操作(单表)

4. JPA中实现一对多映射配置及操作

5. JPA中实现多对多映射配置及操作

6. 基于JPA的映射配置和hibernate操作组合使用

你可能感兴趣的:(4.1 JPA的概念以及它和hibernate之间的关系)