我有一个像这样的存储库:
public interface UserRepository extends PagingAndSortingRepository<User, Long>{
List<User> findByNameLikeIgnoreCase(String filterString, Sort sort);
List<User> findByNameLikeIgnoreCase(String filterString, PageRequest pageRequest);
}
我有一个像这样的控制器:
@RestController
public class UserController {
@Autowired
private UserRepository userDao;
private Iterable<User> retrieveUsers(String nameToFilterBy, String orderProperty, Integer page, Integer pageSize) {
Sort sort = new Sort(Sort.Direction.ASC, orderProperty);
PageRequest pageRequest = page == null || pageSize == null ? null :
new PageRequest(page - 1, pageSize, sort);
String filterString = "%" + nameToFilterBy + "%";
return pageRequest != null ? userDao.findByNameLikeIgnoreCase(filterString, pageRequest) :
userDao.findByNameLikeIgnoreCase(filterString, sort);
}
当pageRequest
设置为null
时,findByNameLikeIgnoreCase
按预期使用sort
参数。
但是,如果pageRequest
不是null
,则会为findByNameLikeIgnoreCase
提供pageRequest参数,并提供由java.util.NoSuchElementException
任何有关结合“发现”的提示&#39;分页的功能没有给出错误?