Hibernate 6.2 CR2

发布者:    |       Hibernate ORM 发布

Hibernate ORM 6.2.0.CR2刚刚发布,带来了许多新功能。

自6.2 CR1发布以来,已经过去了超过一个月。在这段时间里,我们收到了许多非常好的反馈和错误报告,并解决了100多个Jira报告。感谢您的反馈!

代码已经非常稳定,因为SQL AST的变化也变得平滑。

对“可选表”的SQL MERGE更新

基于SQL AST,Hibernate现在可以使用SQL MERGE命令来处理对可选表的更新。

对可选表的更新将会有三种最终结果

  1. 如果没有在表中找到对应的行,则插入该行

  2. 否则,如果所有新的“值”列都是null,则删除该行

  3. 否则更新该行

传统行为是在运行时自行进行这些if检查,并单独执行插入、更新和删除语句。而MERGE命令允许在单个JDBC调用中更有效地完成这些操作。

目前这支持以下数据库

回退机制是使用传统行为。

专有SQL类型

处理某些SQL类型需要访问特定JDBC驱动程序的类,以便正确读取和写入该类型的数据。在某些环境中(例如各种容器),这些类对Hibernate不可用。

现在Hibernate可以更好地处理这些情况,通常基于类型转换。例如,我们可能通过将JSON表达式包装在类型转换函数中来将ResultSet中的JSON值读取为String。

社区

有关更多信息,请参阅

  • 用户指南

  • 迁移指南

  • 发布页面

  • 孵化报告

  • 弃用报告

  • 内部报告

  • 兼容性策略

访问网站与我们取得联系。


返回顶部