休眠条件查询。创建子标准后,我可以 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();
希望这会有所帮助。
在 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();
希望这会有所帮助。