Query query = new Query();
//分页
int pageNum = pageRequest.getPageNum();
int pageSize = pageRequest.getPageSize();
int offset = (pageNum - 1) * pageSize;
query.skip(offset).limit(pageSize);
//排序
query.with(Sort.by(Sort.Order.desc("createDate")));
//条件过滤
if (!CollectionUtils.isEmpty(pageRequest.getColumnFilters())) {
String productNameValue = pageRequest.getColumnFilters().get("productName").getValue();
String categoryIdValue = pageRequest.getColumnFilters().get("categoryId").getValue();
String productModelValue = pageRequest.getColumnFilters().get("productModel").getValue();
if (!StringUtils.isEmpty(productNameValue)) {
query.addCriteria(Criteria.where("productName").is(productNameValue));
}
if (!StringUtils.isEmpty(categoryIdValue)) {
query.addCriteria(Criteria.where("categoryId").is(categoryIdValue));
}
if (!StringUtils.isEmpty(productModelValue)) {
query.addCriteria(Criteria.where("productModel").is(productModelValue));
}
}
List<Product> products = mongoTemplate.find(query, Product.class, new Product().getCollectionName());
//总数
long count = mongoTemplate.count(new Query(), Product.class);
springboot整合mongdbTemplate实现条件,分页,排序,总数查询
最新推荐文章于 2024-05-24 11:15:53 发布