Martin
Martin

Reputation: 127

spring boot pageable configure params name

I am using Spring Boot v1.5.2.RELEASE.

My controller is like this:

@PostMapping(path = "/list_praxis")
public
@ResponseBody
ModelAndView login(Pageable pageable,HttpServletRequest request) {
    return new ModelAndView(new WebJsonView());
}

My parameters size:10 page:0, Pageable works fine.

But now I want to change my parameters to pageSize:10 currentPage:0.

Pageable doesn't work, because pageable can only receive size and page, and doesn't support other parameter names.

How can I configure this to use pageSize and currentPage instead of size and page?

Upvotes: 4

Views: 3553

Answers (2)

theprogrammer
theprogrammer

Reputation: 2019

You can also use spring's application properties like this

spring.data.web.pageable.page-parameter: pageNumber
spring.data.web.pageable.size-parameter: pageSize

You can learn about other common application properties here.

Upvotes: 7

zaki benz
zaki benz

Reputation: 702

I think this would work for you.

@Configuration
public class RepositoryRestMvcConfiguration extends SpringBootRepositoryRestMvcConfiguration{

    @Override
    protected void configureRepositoryRestConfiguration(RepositoryRestConfiguration config) {
           config.setPageParamName("p")
                 .setLimitParamName("l")
                 .setSortParamName("s");
    }
}
This configuration would set the paging parameter to p, the size parameter to l, and the sort parameter to s:

Upvotes: 0

Related Questions