java - @ModelAttribute 像 Swagger 一样显示在 body 中

标签 java spring-mvc swagger

我使用org.springdoc:springdoc-openapi-ui:1.6.9

我有 Controller :

@GetMapping
public ResponseEntity<String> getApplications(@ModelAttribute ApplicationFilter applicationFilter){return null;}

并且有类参数:

@Getter
@Setter
@NoArgsConstructor
public class ApplicationFilter {

  @Parameter(name = "ids", required = true)
  private List<Long> ids;
}

我需要将 ModelAttribute 显示为 parameter fields Swagger 。

但真实的表现形式是body

如果在字段上添加@Schema(name = "This is field") - result

请告诉我。我需要做什么才能让我的 @ModelAttribute 显示为参数字段?

最佳答案

找到了适合我的解决方案:

@GetMapping
public ResponseEntity<String> getApplications(@ParameterObject @ModelAttribute ApplicationFilter applicationFilter){return null;}

添加注解@ParameterObject

关于java - @ModelAttribute 像 Swagger 一样显示在 body 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72878154/

相关文章:

java - 如何在SWT中设置ScrolledComposite的最大高度

java - Spring MVC 表单验证不起作用

spring-mvc - spring boot测试无法注入(inject)TestRestTemplate和MockMvc

java - Springfox Swagger 一代创建了奇怪的模式

java - 为 bearer auth 添加 swagger 注释

spring-boot - Swagger 的 @ApiResponses 和 @ApiResponses

java - request.getParameter 在 Chrome 中返回空值

java - 无法使用 Spring Boot 在 mongo 查询中使用十进制数将 $ 嵌套在 $in 下

java - Java Web 服务器中的线程池

java - "Hello World"使用 Spring MVC 的 SOAP Web 服务