Spring PageableArgumentResolver 已弃用,如何使用 PageableHandlerMethodArgumentResolver?
2022-09-04 22:07:36
这是我当前的分页解析器:
@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的实现有点不同,因为指的是2。页面,所以我不得不使用它,以便它显示第一页。new PageRequest(1, 5)
new PageRequest(0, 5)
但是我仍然对这个新对象有问题。当我调用不带参数的URL时,分页栏的首次加载是完美的(既不 page.page 也不 page.page page.size)。然后,当我想在分页栏上移动时,我们使用2个参数调用相同的url(例如page.page=3&page.size=5),仍然显示第一页。我认为这个新的解析器需要的不仅仅是这2个参数,这样它就不会激活回退条件。你有没有知道如何使用这个PageableHandlerMethodArgumentResolver?