这是我目前PageableResolver:Spring PageableArgumentResolver已弃用,如何使用PageableHandlerMethodArgumentResolver?
@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
PageableArgumentResolver resolver = new PageableArgumentResolver();
resolver.setFallbackPageable(new PageRequest(1, 5));
argumentResolvers.add(new ServletWebArgumentResolverAdapter(resolver));
}
但PageableArgumentResolver已被弃用,并链接到PageableHandlerMethodArgumentResolver,我想我们可以在没有适配器注册,像这样:
@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
PageableHandlerMethodArgumentResolver resolver = new PageableHandlerMethodArgumentResolver();
resolver.setFallbackPageable(new PageRequest(0, 5));
argumentResolvers.add(resolver);
}
首先新类PageableHandlerMethodArgumentResolver的实现有点不同,因为new PageRequest(1, 5)
引用了2.页面,所以我必须使用new PageRequest(0, 5)
才能显示第一页。
但我仍然有这个新对象的问题。当我调用没有参数的URL时(无论page.page还是page.size),分页栏的第一次加载是完美的。然后,当我想要在分页栏上移动时,我们使用2个参数调用相同的url(例如,page.page = 3 & page.size = 5),但仍显示第一页。我认为这个新的Resolver需要的不仅仅是这两个参数,所以它不会激活回退条件。你有任何想法如何使用这个PageableHandlerMethodArgumentResolver?
这似乎并不工作设置此setOneIndexedParameters为true。查看参数解析器的文档,它说:“使用此选项不会覆盖解析处理器方法参数的内置支持。要直接定制对参数解析的内置支持,请配置RequestMappingHandlerAdapter。” – jplandrain
请参阅http://stackoverflow.com/questions/23521280/spring-data-rest-configure-pagination – jplandrain