springboot jpa mongodb 多条件分页查询

Posted 枫树湾河桥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot jpa mongodb 多条件分页查询相关的知识,希望对你有一定的参考价值。

public Page<Recorded> getRecordeds(Integer page, Integer size, Recorded recorded) {

        if (page<1){

            page=1;

        }

        Sort sort = new Sort(Sort.Direction.DESC,"createTime");

        Pageable pageable = new PageRequest(page-1,size,sort);

        Query query = new Query();

        //条件id =XX

        Criteria criteria = Criteria.where("callerId").is(recorded.getCallerId());

criteria.and(“status”).is(Recorded.SUCCESS);

if(startTime!=null&&endTime!=null){

            criteria.andOperator(

                    Criteria.where("createTime").gte(startTime),

                    Criteria.where("createTime").lte(endTime)

            );

        }

query.addCriteria(criteria);

 

        //mongoTemplate.count计算总数

        long total = mongoTemplate.count(query, Recorded.class);

        

        // mongoTemplate.find 查询结果集

        List<Recorded> items = mongoTemplate.find(query.with(pageable), Recorded.class);

 

        return new PageImpl(items, pageable, total);

 

    }

以上是关于springboot jpa mongodb 多条件分页查询的主要内容,如果未能解决你的问题,请参考以下文章

你应该知道的springboot mongodb jpa那些小tip.

你应该知道的springboot mongodb jpa那些小tip.

springboot jpa mongodb 多条件分页查询

Spring Boot MongoDB JPA 简化开发

无法将 Spring Data MongoDB + Spring Data JPA 与 Spring Boot 一起使用

springboot整合mongodb复杂查询和分页查询