实现
/*** 分页查询公司拥有的项目的列表* @param companyId* @return*/public Page<Project> getListByCompanyPage(PageFilter pageFilter,String companyId,Date beginDate,Date endDate,String projectName) {Page<Project> l=projectRepository.findAll(new Specification<Project>() {@Overridepublic Predicate toPredicate(Root<Project> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder cBuilder) {//开始,定义一个PredicatePredicate p = cBuilder.conjunction();/**精确查询**/p = cBuilder.and(p, cBuilder.equal(root.get("companyId"), companyId));/**模糊查询**/p = cBuilder.and(p, cBuilder.like(root.get("projectName"), "%"+projectName+"%"));/**时间段查询**///大于等于开始时间p = cBuilder.and(p, cBuilder.greaterThanOrEqualTo(root.get("createTime"), beginDate));//小于等于结束时间p = cBuilder.and(p, cBuilder.lessThanOrEqualTo(root.get("createTime"), endDate));return p;}}, pageFilter.getPageRequest());return l;}