假设我有一个父类Book,每个都有一个作者列表。 我试图找到所有书籍,其中至少有两位作者名为“Bob”,另一本名为“Alan”。
这是我的Groovy代码不起作用,它同时查找名为“Bob”和“Alan”的作者的书籍,因此返回0项。我试图创建2个别名来创建2个连接,但是Hibernate拒绝为同一个集合创建2个别名。
def crit = hsession.createCriteria(Book.class).createCriteria(“authors”)。add(Restrictions.eq(“name”,“Bob”))。add(Restrictions.eq(“name”,“Alan” “))
答案 0 :(得分:0)
你需要像这样使用LogicalExpression
def crit = hsession.createCriteria(Book.class)
.createAlias("authors", "author")
.add(Restrictions.or(Restrictions.eq("author.name", "Bob"), Restrictions.eq("author.name", "Alan")))