public List<Item> findDateByPage(Pagination pagination, long cid){
CriteriaProvider c = CriteriaProvider.getInstance();
//建立关系...
c.addAssociations(c.new Association("categories", "categories"));
c.addAssociations(c.new Association("systemInfo", "systemInfo"));
c.addAssociations(c.new Association("defaultCategory", "defaultCategory"));
//Criteria多对多查询...
c.addCriterion(Restrictions.or(Restrictions.eq("categories.objectId", cid), Restrictions.eq("defaultCategory.objectId", cid)));
c.addCriterion(Restrictions.eq("enable", Boolean.TRUE));
c.addOrder(Order.desc("systemInfo.createDate"));
c.setDistinctRootEntity(true);//去重.
return itemRepository.findFrontByPage(pagination, c);
}
Criteria使用
最新推荐文章于 2022-02-25 20:00:37 发布
本文介绍了一种基于Criteria API的分页查询方法,并通过添加多个关联及准则实现了多对多查询,确保了查询结果的有效性和准确性。同时,通过设置去重属性避免了重复数据的出现。
458

被折叠的 条评论
为什么被折叠?



