【发布时间】:2016-08-04 06:31:18
【问题描述】:
我正在使用带有休眠功能的 Spring。
我要获取的对象属于 A 类,它具有属性 - B 类的一组对象,例如
public class A {
private Integer aID;
private Set<B> bs;
private String fieldA1;
private String fieldA2;
// setters and getters
}
public class B {
private Integer bID;
private String fieldB1;
private String fieldB2;
// setters and getters
}
在映射文件中,在 A 类映射标记中,我包含,
<set name="bs" table="TABLE_B">
<key column="A_ID" />
<one-to-many class="com.proj.test.B"/>
</set>
现在我想获取 A 对象,其中 bs 内部过滤条件取决于 fieldB1 和 fieldB2 的值。 (不获取所有 B 对象)
有什么建议/答案吗?
【问题讨论】:
-
您的意思是在获取 A 时要对子对象进行过滤?
-
@aksappy 是的。例如,通常 A 对象有 10 个 b 对象,但现在我想查询 db 以获取该 A 对象,并根据某些条件过滤 b 对象
-
我不认为你可以使用 Hibernate Criteria API 做到这一点。但是,您可以使用 HQL 或本机查询。
标签: java hibernate spring-mvc