【发布时间】:2010-02-27 12:51:59
【问题描述】:
如果我要搜索那些上过“数学”课的学生,而“约翰”是他的组:
我应该使用 createCriteria 还是 createAlias?
Criteria:
Criteria criteria = session.createCriteria(Student.class);
Criteria subquery1 = criteria.createCriteria("courses", course).add(Restrictions.eq(course.name, "Math"));
Criteria subquery2 = criteria.createCriteria("group", student).add(Restrictions.eq(student.name, "John"));
如何将 subquery1 和 subquery2 与初始条件放在一起?
Alias:
Criteria criteria = session.createCriteria(Student.class).
createAlias("courses", course).add(Restrictions.eq(course.name, "Math")).
createCriteria("group", student).add(Restrictions.eq(student.name, "John"));
何时使用 createCriteria 以及何时使用 createAlias?我认为船是一样的......
【问题讨论】:
-
我不确定这是 Java/Hibernate 还是 C#/NHibernate 问题,所以已经回答了这两个问题。
-
CreateCriteria 和 CreateAlias 之间存在细微差别,各有目的。在stackoverflow.com/questions/899079/…查看我的回答这实际上是一个重复的问题
标签: nhibernate hibernate createcriteria