gpt4 book ai didi

java - 如何在 JPA 中对集合属性进行动态排序?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:55:07 26 4
gpt4 key购买 nike

我们有以下 JPA 类:

@Entity
class Supplier {
// ... id property etc.

@OneToMany
@OrderBy("someProperty")
private List<Region> regions;
}

这在正常情况下工作正常。但是,我们有一些多语言数据,其中的值存储在 nameEnnameDenameZh 等属性中。要使用的确切属性取决于登录用户。例如,说德语的用户应该看到这些区域,就像用 @OrderBy("nameDe") 注释一样。

我怎样才能做到这一点?

我知道我可以在加载后在我的代码中对集合进行排序,但这会使结果分页变得非常困难。

最佳答案

您可以在 java 中对它们进行排序。可能在 setter/getter 中:

List<Region> getRegions(){
sorted = new List<Regions>(regions);
Collections.sort(sorted, new RegionComparator(getUserLanguage()));
return sorted;
}

关于java - 如何在 JPA 中对集合属性进行动态排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4390325/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com