1.JPA概述

1.JDBC

很久很久以前,连接不同数据库都需要不同的API,连MySQL、操作MySQL,连ORACLE,操作ORACLE都不同,然后SUN公司推出一组规范(JDBC),即是一组接口。具体实现由厂商负责,就是项目中JDBC驱动。统一了JavaEE访问数据库的一组规范


2.JPA是什么

  • Java Persistence API:用于对象持久化的 API
  • Java EE 5.0 平台标准的 ORM 规范,使得应用程序以统一的方式访问持久层



3.JPA和Hibernate的关系

  • JPA 是 hibernate 的一个抽象(就像JDBC和JDBC驱动的关系):
       -JPA 是规范:JPA 本质上就是一种  ORM 规范,不是ORM 框架 —— 因为 JPA 并未提供 ORM 实现,它只是制订了一些规范,提供了一些编程的 API 接口,但具体实现则由 ORM 厂商提供实现
       -Hibernate 是实现:Hibernate 除了作为 ORM 框架之外,它也是一种 JPA 实现
  • 从功能上来说, JPA 是 Hibernate 功能的一个子集

4.JPA的优势

  • 标准化:  提供相同的 API,这保证了基于JPA 开发的企业应用能够经过少量的修改就能够在不同的 JPA 框架下运行。
  • 简单易用,集成方便:  JPA 的主要目标之一就是提供更加简单的编程模型,在 JPA 框架下创建实体和创建 Java  类一样简单,只需要使用 javax.persistence.Entity 进行注释;JPA 的框架和接口也都非常简单
  • 可媲美JDBC的查询能力:  JPA的查询语言是面向对象的,JPA定义了独特的JPQL,而且能够支持批量更新和修改、JOIN、GROUP BY、HAVING 等通常只有 SQL 才能够提供的高级查询特性,甚至还能够支持子查询。
  • 支持面向对象的高级特性: JPA 中能够支持面向对象的高级特性,如类之间的继承、多态和类之间的复杂关系,最大限度的使用面向对象的模型










猜你喜欢

转载自blog.csdn.net/weixin_36439837/article/details/80316293