Specification<User> specification = new Specification<User>() {
// @Override
// public Predicate toPredicate(Root<User> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) {
// List<Predicate> predicateList = new ArrayList<>();
// Role role = roleRepository.findFirstById(2L);
// predicateList.add(criteriaBuilder.isNotNull(root.get("role")));
// predicateList.add(criteriaBuilder.equal(root.get("role").as(Role.class), role));
// String likeWord = "%" + "普通" + "%";
// predicateList.add(criteriaBuilder.like(root.get("name").as(String.class), likeWord));
// Predicate[] arrayType = new Predicate[predicateList.size()];
//
//// criteriaQuery.multiselect(root.get("name"), root.get("role"));
// criteriaQuery.select(root.get("name"));
// criteriaQuery.where(predicateList.toArray(arrayType));
// return criteriaQuery.getRestriction();
// }
// };
这种查询方式, 其实我是想让它返回 List<Map>这种类型来着。。。
// @Override
// public Predicate toPredicate(Root<User> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) {
// List<Predicate> predicateList = new ArrayList<>();
// Role role = roleRepository.findFirstById(2L);
// predicateList.add(criteriaBuilder.isNotNull(root.get("role")));
// predicateList.add(criteriaBuilder.equal(root.get("role").as(Role.class), role));
// String likeWord = "%" + "普通" + "%";
// predicateList.add(criteriaBuilder.like(root.get("name").as(String.class), likeWord));
// Predicate[] arrayType = new Predicate[predicateList.size()];
//
//// criteriaQuery.multiselect(root.get("name"), root.get("role"));
// criteriaQuery.select(root.get("name"));
// criteriaQuery.where(predicateList.toArray(arrayType));
// return criteriaQuery.getRestriction();
// }
// };
这种查询方式, 其实我是想让它返回 List<Map>这种类型来着。。。