有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何在springmvc POST webservice中验证集合?

我有一个简单的springWeb服务,它提供一个@PostMapping并接受一个json元素数组。 我希望spring自动验证列表中的每个元素

@RestController
public class PersonServlet {
    @PostMapping
    public void insertPersons(@RequestBody @Valid List<PersonDto> array) {
    }
}


public class PersonDto {
    @NotBlank
    private String firstname;

    @NotBlank
    private String lastname;
}

以下POST请求应失败,并出现firstname缺失的验证错误:

[
  {
    "lastname": "john"

  },
  {
    "firstname": "jane",
    "lastname": "doe"
  }
]

结果:请求未被拒绝。为什么

旁注:如果我只是使用PersonDto作为参数(而不是列表),并且只使用一个人发送jsonpost请求,那么验证工作正常,并且正确地拒绝了请求

因此,一般来说,验证注释似乎是有效的,但在集合中就不行了


共 (0) 个答案