我有实体"书签"使用"关键字" (多对多)和"标签"(多对多)。我想通过关键字" k"找到所有书签。 - > ("k" belong to "keyords") || ("k" belong to "tags")
。这是代码:
Criteria criteria = session.createCriteria(Bookmark.class)
.createAlias("tags", "tagsAlias")
.createAlias("keywords", "keywordsAlias");
Disjunction or = Restrictions.disjunction(
Restrictions.like("tagsAlias.tagName", keyword + "%"),
Restrictions.like("keywordsAlias.keyword", keyword + "%"));
criteria.add(or);
criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
List result = criteria.list();
有一个标准和一个别名一切都很好。但是有两个别名,结果不正确 - 只有正确输出的子集。我哪里错了?
任何帮助指针都赞赏。