java jpa:list和sublist

时间:2013-01-30 23:59:18

标签: java sql database hibernate jpa

我有一个使用JPA持久保存的java对象。该对象有一个成员'friendsList',它是一个字符串列表。我在这个对象上使用了@CollectionOfElements hibernate注释。结果是我有两个表,一个持久保存我的对象,另一个持久保存每个对象的列表。

如何检索(使用jpa)列表中包含“hello”或“world”的所有对象?

1 个答案:

答案 0 :(得分:0)

以下工作正常:它还将创建一个Parent_names表来维护关系。 不要使用@OneToMany注释

@ElementCollection(targetClass = String.class)
    private List<String> names;

或者我认为您可以尝试解决方法: 在一个类中包装字符串。

class FriendsName{
private String name;
//getter setter
}

然后,

class Parent{
@OneToMany
List<FriendsName> friendsName;
}

你可以像以下那样做JPQL:

select p from Parent p where p.friendsName.name in ('hello','world')