gpt4 book ai didi

java - 如何在 spring boot 应用程序中配置 PageableHandlerMethodArgumentResolver

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:48:15 25 4
gpt4 key购买 nike

我有一个 spring boot 应用程序,我想配置 PageableHandlerMethodArgumentResolver,我尝试了以下代码,但不起作用:

@Configuration
public class WebConfig extends WebMvcConfigurerAdapter {

// .......

@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
PageableHandlerMethodArgumentResolver resolver = new PageableHandlerMethodArgumentResolver();
resolver.setFallbackPageable(new PageRequest(0, 50));
argumentResolvers.add(resolver);
super.addArgumentResolvers(argumentResolvers);
}
}

Controller 方法:

@Override
@PreAuthorize("hasRole('ROLE_SYS_ADMIN')")
@RequestMapping(method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Page<Account>> query(@QuerydslPredicate Predicate predicate,
@PageableDefault Pageable pageable) {
return new ResponseEntity<>(accountRepo.findAll(predicate, pageable), HttpStatus.OK);
}

这是一个简单的启动应用程序,只是在玩 spring boot,没有空的 WebConfig 配置类

@Configuration
public class WebConfig {

@Bean
public Filter html5ModeFilter() {
return new Html5ModeFilter();
}
}

这是我的配置类列表:

Html5ModeFilter.java
SecurityConfig.java
ServletInitializer.java
UserDetailsAdapter.java
WebConfig.java

最佳答案

从以下位置删除 @PageableDefault:

public ResponseEntity<Page<Account>> query(..., @PageableDefault Pageable pageable) {
...
}

PageableDefault 注释如下所示:

public @interface PageableDefault {
int value() default 10;
int size() default 10;
int page() default 0;
...
}

这些默认值将覆盖您的回退值,您将看到前十个结果。

关于java - 如何在 spring boot 应用程序中配置 PageableHandlerMethodArgumentResolver,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35397912/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com