是否有替代 6.3 中已弃用的@Where和@Loader

Is there a replacement for the in 6.3 deprecated @Where and @Loader

提问人:Raymond Domingo 提问时间:9/26/2023 更新时间:9/29/2023 访问量:142

问:

从 hibernate 6.3 开始,org.hibernate.annotations.Where 和 Loader 被弃用。

我们将这些注解与 @NamedQuery 和 @SQLDelete一起使用来实现软删除。

什么是 de 非弃用的实现方式?

休眠 用警告

评论


答:

1赞 Andrei Lisa 9/29/2023 #1

根据文档,您可以将注释替换为:@Where@SQLRestriction

从:

 @Entity
 @Where(clause = "status <> 'DELETED'")
 class Document {
     ...
     @Enumerated(STRING)
     Status status;
     ...
 }

自:

 @Entity
 @SQLRestriction("status <> 'DELETED'")
 class Document {
     ...
     @Enumerated(STRING)
     Status status;
     ...
 }

此外,根据文档,您还可以替换或@Loader@SQLSelect@HQLSelect

关于和@HQLSelect@SQLSelect

这些注解只是 Loader 的缩写,与 NamedQuery。

有关“如何做”的更多信息,我认为您应该查看有关它的文档的附件参考。

评论

0赞 Raymond Domingo 10/2/2023
我应该自己找到那个文档......谢谢你为我指明了正确的方向!
0赞 Andrei Lisa 10/2/2023
不客气,不要忘记接受这个答案是正确的。