我有以下示例实体
class Book{
int id
String name
int sid
}
class Author {
int id
String name
List<Book> books
int mid
}
这不是一个好的设计,我知道这只是试图解释一个场景。
现在我的问题是,有什么方法可以检查两个不相关列的相等
例如
session.createCriteria(Author.class, "author")
.createAlias("books", "book")
.add(Restrictions.eq("author.mid","book.sid")
.list()
可以吗?
最佳答案
在我看来,Criteria API 不支持连接不相关的实体。尝试按如下方式使用 HQL 而不是 Criteria API。
session.createQuery("from Book as book INNER JOIN Author as author WHERE book.sid = author.mid").list();
关于Hibernate 检查两个不相关列是否相等,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52367695/