网站首页 > 技术文章 正文
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再战一轮?
- 08-06中等生如何学好初二数学函数篇
- 08-06C#构造函数
- 08-06初中数学:一次函数学习要点和方法
- 08-06仓颉编程语言基础-数据类型—结构类型
- 08-06C++实现委托机制
- 08-06初中VS高中三角函数:从"固定镜头"到"360°全景",数学视野升级
- 08-06一文讲透PLC中Static和Temp变量的区别
- 08-06类三剑客:一招修改所有对象!类方法与静态方法的核心区别!
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- windowsscripthost (69)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- mysqlany_value (79)
- static函数和普通函数 (84)
- el-date-picker开始日期早于结束日期 (70)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)