网站首页 > 技术文章 正文
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-01-04 一次“败笔”之后,微信会否遭遇QQ的困境?
- 2025-01-04 鸿蒙ArkUI-X已更新适配API13啦
- 2025-01-04 微软详解.Net Native:Win10通用应用性能的保障
- 2025-01-04 开发不同类型的App需要用到哪些技术?
- 2025-01-04 迅雷极速版v1.0.12 下载:批量下载磁力链接
- 2025-01-04 DevExpress v16.1新功能介绍
- 2025-01-04 Android native开发环境搭建
- 2025-01-04 基于C++音视频高手课-WebRTC远程桌面后台服务实战
- 2025-01-04 Electron简介
- 2025-01-04 WebApp与Native App再战一轮?
- 1509℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 523℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 491℃MySQL service启动脚本浅析(r12笔记第59天)
- 470℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 468℃启用MySQL查询缓存(mysql8.0查询缓存)
- 448℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 428℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 425℃MySQL server PID file could not be found!失败
- 最近发表
- 标签列表
-
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- linux删除一个文件夹 (65)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)