网站首页 > 教程文章 正文
Hibernate 在 5 以后的版本中全面推进使用 JPA 的查询语法,甚至准备废弃掉自己已有的查询语法。
什么是 JPA
JPA 全称为 Java Persistence API ,Java 持久化API是Sun公司在java EE 5规范中提出的 Java 持久化接口。
JPA吸取了目前Java持久化技术的优点,旨在规范、简化Java对象的持久化工作。
使用JPA持久化对象,并不是依赖于某一个ORM框架。
换句话说就是 JPA 是一个技术规范,你可以使用各种框架来进行实现。
比如你可能听到最多的 Hibernate, OpenJPA,或者 EclipseLink 等都是 JPA 的实现。
Hibernate 和 JPA 的关系
根据数据访问的层次来说,我们如果使用 Hibernate 的话,通常我们需要写的代码都在数据访问层。
然后在数据访问层中编写查询代码。
这个查询代码可以使用 Hibernate Native API ,也可以使用 JPA。
在 Hibernate 5 及其后续版本中,你可能会看到下面的这个警告:
HHH90000022: Hibernate's legacy org.hibernate.Criteria API is deprecated; use the JPA javax.persistence.criteria.CriteriaQuery instead
上面警告的意思是 Hibernate 准备丢弃掉自己的 Hibernate Native API 查询 API 了。
在你的数据访问层的代码中,你需要采取 JPA 的写法了。
如果你对老的 Hibernate 版本进行升级的时候,你可能会遇到上面的问题,你需要重新调整不少的写法。
可以说 Hibernate 正在全面向 JPA 的写法靠拢。
https://www.ossez.com/t/hibernate-jpa/13851
猜你喜欢
- 2025-07-28 Spring框架基础知识-第三节内容(spring框架的两种使用方式)
- 2025-07-28 SpringBoot中使用Spring Data JPA
- 2025-07-28 12《Spring Boot 入门教程》Spring Boot 使用 JPA
- 2025-07-28 Spring Data JPA系列2:SpringBoot集成JPA详细教程,快速上手JPA
- 2025-07-28 Java中PO、BO、VO、DTO、POJO、DAO概念及其作用
- 2025-07-28 springboot面试题(springcloud面试题)
- 2025-07-28 Spring 事务管理详情介绍(spring的事务管理是如何实现的)
- 2025-07-28 说一说 JPA + Oracle 项目启动时遇到一大坑,你碰到过吗?
- 2025-07-28 Java 面试题:乐观锁和悲观锁的理解及如何实现,有哪些实现方式?
- 2025-07-28 Spring Boot 最佳实践(五)Spring Data JPA 操作 MySQL 8
- 最近发表
- 标签列表
-
- location.href (44)
- document.ready (36)
- git checkout -b (34)
- 跃点数 (35)
- 阿里云镜像地址 (33)
- qt qmessagebox (36)
- mybatis plus page (35)
- vue @scroll (38)
- 堆栈区别 (33)
- 什么是容器 (33)
- sha1 md5 (33)
- navicat导出数据 (34)
- 阿里云acp考试 (33)
- 阿里云 nacos (34)
- redhat官网下载镜像 (36)
- srs服务器 (33)
- pico开发者 (33)
- https的端口号 (34)
- vscode更改主题 (35)
- 阿里云资源池 (34)
- os.path.join (33)
- redis aof rdb 区别 (33)
- 302跳转 (33)
- http method (35)
- js array splice (33)