8
我们有以下JPA类:如何动态地对JPA中的集合属性进行排序?
@Entity
class Supplier {
// ... id property etc.
@OneToMany
@OrderBy("someProperty")
private List<Region> regions;
}
这工作在正常情况下的罚款。但是,我们有一些多语言数据,其中值存储在属性中,如nameEn
,nameDe
,nameZh
。要使用的确切属性取决于登录的用户。例如,讲德语的用户应该看到区域,就好像它已用@OrderBy("nameDe")
进行了注释。
我该如何做到这一点?
我知道我可以在我的代码中加载后对其中的集合进行排序,但是这使得分页结果相当困难。
因为你的持久化单元创建EntityManagerFactory的时候注释处理一次你不能嵌入在注释。你试图做的是类似于建立一个动态查询。 – 2010-12-08 17:39:35