Hibernate 6.4.0.CR1

发布者    |       Hibernate ORM 发布

6.4版本增加了许多新功能和改进。

软删除

6.4版本增加了支持使用新的@SoftDelete注解进行软删除。

@Entity
@SoftDelete
class Account {
        ...
}

通过注解属性简单处理已删除/未删除(反向)与活动/非活动(反向)的值

@Entity
@SoftDelete(strategy=ACTIVE)
class Account {
        ...
}

它甚至支持可插拔的转换器来处理存储在数据库中的内容。

有关详细信息,请参阅用户指南

HQL/Criteria 数组函数

早期工作的基础上,6.4版本增加了处理HQL和Criteria查询中数组的剩余函数,包括 -

array()

基于传入的参数创建数组 - 例如 array(1,2,3)

array_position()

确定数组中元素的索引位置 - 例如 where array_position(an.array,'x') = 1

array_length()

确定数组的长度 - 例如 where array_length(an.array) > 50

array_get()

通过索引访问数组中的元素 - 例如 where array_get(an.array, 1) <> 13

array_slice()

基于上下索引创建给定数组的子数组 - 例如 array_slice(an.array,3,6)

array_contains()

数组是否包含元素 - 例如 array_contains(an.array, 1)

等等... 有关这些函数的详细信息,请参阅查询指南

这些函数仍在孵化中,一些内容(名称等)可能在最终版本之前发生变化。

Java Flight Recorder 事件

CR1包含产生少量Java Flight Recorder(JFR)事件的实验性支持。这在许多JDK上工作,但我们最近发现,尽管是Open JDK的一部分,但并非所有JDK都支持JFR包。

长话短说,

  • 如果您的JDK支持JFR,CR1将产生一些Hibernate特定的事件

  • 如果您的 JDK 不支持 JFR,CR1 将无法为您工作。

在 6.4 最终版本发布之前,我们将决定如何进行后续操作

非字符串租户 ID

6.4 版本增加了使用除 String 之外类型作为 tenant-id 的支持。

附言:

有关更多信息,请参阅

有关支持 API 的相关资源,请参阅以下内容

访问网站以了解如何与我们联系。


回到顶部