设置JPA Pageable对象的默认页面大小

设置JPA Pageable对象的默认页面大小,第1张

设置JPA Pageable对象的默认页面大小

如果你正在谈论Spring Data PagingAndSortingRepository,则可以通过使用

@PageableDefaulton
Controller方法来设置默认页面大小,如下所示:

public String listClients(@ModelAttribute FilterForm form, Model model, WebRequest request, @PageableDefault(sort = { "surname", "forename", "address.town" }, value = 50) Pageable pageable) {    }

或者,你可以在Spring配置中使用以下命令配置全局默认值,如下所示在XML和Java配置中。

请注意,较新版本的Spring Data使用基于零的页面索引,而较旧版本的第一页使用1。如果你的UI分页库期望首页为1,则可以将

oneIndexedParameters
属性设置为
true

  • public void setOneIndexedParameters(boolean oneIndexedParameters)

配置是否在请求参数中公开并假定基于1的页码索引。默认为false,表示请求中的页数0等于第一页。如果将其设置为true,则请求中的页码1将被视为第一页。

参数:oneIndexedParameters-要设置的oneIndexedParameters

  • public void setFallbackPageable(Pageable fallbackPageable)

如果在要解析的方法参数上找不到PageableDefault或PageableDefaults(后者仅在旧版模式下受支持),则将Pageable配置为用作回退。如果将其设置为null,请注意,如果在请求中找不到Pageable数据,则控制器方法将被空值处理。请注意,这样做将需要你向bot提供页面和size参数以及请求,因为任何可用参数都没有默认值。

参数:fallbackPageable-用作常规回退的Pageable。

在XML中,如下所示:

<mvc:annotation-driven>    <mvc:argument-resolvers>        <bean > <property name="oneIndexedParameters" value="true"/> <property name="fallbackPageable">     <bean >         <constructor-arg name="page" value="1" />         <constructor-arg name="size" value="10" />     </bean> </property>        </bean>    </mvc:argument-resolvers></mvc:annotation-driven>

在Java Config中,如下所示:

@Configurationpublic class WebConfig extends WebMvcConfigurerAdapter {    @Override    public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {        PageableHandlerMethodArgumentResolver resolver = new PageableHandlerMethodArgumentResolver();        resolver.setoneIndexedParameters(true);        resolver.setFallbackPageable(new PageRequest(1, 20));        argumentResolvers.add(resolver);        super.addArgumentResolvers(argumentResolvers);    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4912381.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存