2016-08-17 58 views
1
class Car { 
    String carname 
} 

class Factory { 
    Car car 
    String factoryname 
} 

如何检查对象Factory是否与factoryname == "Kia",carname == "newmodel"存在?寻找嵌套对象存在

+0

一切都很完美,谢谢。 – user6725249

+0

可否请您确认,“一切都很完美,谢谢”您的评论基本上是说,您找到了自己的解决方案?如果是这样,请将其添加为答案? – cfrick

+0

@cfrick我认为他接受了编辑。 :D –

回答

2

您可以使用createCriteria()方法和别名

def cName = 'newmodel' 
def fName = 'Kia' 
def objects = Factory.createCriteria().count() { 
    createAlias('car', 'c'), 
    eq('c.carname', cName) 
    eq('factoryname', fName) 
} 
boolean isThere = objects 
+2

只需使用'count()' - 节省你,休眠和db获取一次性数据的麻烦 – cfrick

+1

@cfrick哦是的。在途中我改变了答案的结构,并忘记完全切回代码!编辑。 –

+0

当我看到'时,我会畏缩? true:false'。将最后一行改为'boolean isThere = objects'会更简单。您有权使用类型,而不是将所有内容都声明为“def”。 –