/**
* 項目分頁 不帶條件
* @author lm
* @createTime 2017年8月5日12:51:13
* @param pageable
* @return
*/
@Transactional(Transactional.TxType.NOT_SUPPORTED)
public Page<Project> projectPageNoCriteria(Pageable pageable) {
return projectRepository.findAll(pageable);
}
/**
* 項目分頁 帶條件
* @author lm
* @createTime 2017年8月5日12:51:13
* @param pageable
* @return
*/
@Transactional(Transactional.TxType.NOT_SUPPORTED)
public Page<ProjectUser> projectPageCriteria(Pageable pageable, Project project) {
Page<Project> projectPage = projectRepository.findAll(new Specification<Project>() {
@Override
public Predicate toPredicate(Root<Project> root, CriteriaQuery<?> query, CriteriaBuilder criteriaBuilder) {
List<Predicate> list = new ArrayList<>();
if (null != project.getCompanyName() && !"".equals(project.getCompanyName())) {
list.add(criteriaBuilder.like(root.get("companyName").as(String.class), "%" + project.getCompanyName() + "%"));
}
Predicate[] p = new Predicate[list.size()];
return criteriaBuilder.and(list.toArray(p));
}
}, pageable);
return projectPage;
}
spring data jpa 分頁查詢
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.