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 最终版本发布之前,我们将决定如何进行后续操作。