在我的Grails项目中,我有以下类:
class A {
static hasMany = [cs:C]
}
class B {
static hasMany = [cs:C]
}
class C {
static belongsTo = [a:A, b:B]
}
我想查询A类并急切地带来B和C的所有关联。 我尝试了以下条件查询,但是当我从A迭代Cs时,hibernate使用延迟初始化来查询B对象。
A.withCriteria() {
fetchmode "cs", FetchMode.JOIN
fetchMode "cs.b", FetchMode.JOIN
}
有什么想法吗?
答案 0 :(得分:9)
解决。
A.withCriteria() {
cs{
fetchMode "cs.b", FetchMode.JOIN
}
}
或者
A.withCriteria() {
cs{
b{
}
}
}
在这两种情况下,Hibernate都使用两个查询。比我之前的98更好; - )