休眠条件查询。创建子标准后,我可以 return 到原始标准吗?

Hibernate criteria query. After creating a sub-criteria, can I return to the original criteria?

在 Hibernate 教程中有一个 example of sub-criteria

但是在 "kittens" 上创建了子标准后,我可以 return 到原来的吗?如果我写一行 .add(Restrictions.like("id", 1)) ,它会限制 Cat.id 还是 Cat.kittens.id?有没有办法返回并再次限制 cat.id?

List cats = sess.createCriteria(Cat.class)
    .add( Restrictions.like("name", "F%") )
    .createCriteria("kittens") 
        .add( Restrictions.like("name", "F%") ) 
    .add(Restrictions.like("id", 1)) // on Cat.id or Cat.kittens.id?
    .list();

为避免混淆,添加如下代码的标准

    List cats = sess.createCriteria(Cat.class).createCriteria("cat")
.add( Restrictions.like("name", "F%") )
.createCriteria("kittens") 
    .add( Restrictions.like("name", "F%") ) 
.add(Restrictions.like("cat.id", 1)) // on Cat.id or Cat.kittens.id?
.list();

希望这会有所帮助。