@Override public List<Brand> getBrandList(Map map) { String search = (String) map.get("search"); String pageNum = (String) map.get("pageNum"); String pageSize = (String) map.get("pageSize"); Integer pageNum1=Integer.valueOf(pageNum); Integer pageSize1=Integer.valueOf(pageSize); Specification<Brand> specification=new Specification<Brand>() { //select * from tb_brand (where name like? ) limit 0,10; @Override public Predicate toPredicate(Root<Brand> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) { Path<Object> name = root.get("name"); List<Predicate> predicateList = new ArrayList<>(); if (search!=null){ Predicate p1 = criteriaBuilder.like(name.as(String.class),"%"+search+"%"); predicateList.add(p1); } Predicate[] pre = new Predicate[predicateList.size()]; return criteriaQuery.where(predicateList.toArray(pre)).getRestriction(); } }; Pageable pageable=new PageRequest(pageNum1-1,pageSize1); Page<Brand> page=brandDao.findAll(specification,pageable); List<Brand> list = page.getContent(); for (int i=0;i<list.size();i++){ Brand brand = list.get(i); System.out.println(list); } return list; }
spring data jpa 参数为null查询所有,否则根据参数查询
原文:https://www.cnblogs.com/yscec/p/12149941.html