【问题标题】:Springboot request object validation [duplicate]Spring Boot请求对象验证[重复]
【发布时间】:2018-12-05 00:45:08
【问题描述】:

我有一个请求对象

public class OrderRequest {

    private List<Details> detailsList;

 }

 public class Details{
    Private String id;

    private List<Detail> detailList;

 }


  public class Detail{

    @NotNull(message = "Please provide the inventory name")
    Private String inventoryName;

    Private String inventoryId;

    Private String inventoryLoc;

 }

我想验证每个请求对象的详细信息是否不为空或不为空。

javax.validation.constraints.NotNull

为控制器类添加@valid注解

@Valid @RequestBody 最终的 OrderRequest 订单请求

但它似乎不起作用。我在这里错过了什么?

【问题讨论】:

  • 你确定你已经添加了所有的依赖?
  • @dehasi 是的,validation-api 包含在 spring-boot-starter-web 的捆绑包中

标签: java rest spring-boot bean-validation spring-restcontroller


【解决方案1】:

您还应该如下注释您的OrderRequest(在 Bean Validation 2.0 的情况下):

public class OrderRequest {
    private List<@Valid Details> detailsList;
}

或者,如果您使用的是较旧的 Bean Validation 1.1,您应该将 `@Valid 放在列表之前:

public class OrderRequest {
    private @Valid List<Details> detailsList;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-10-18
    • 1970-01-01
    • 1970-01-01
    • 2020-03-14
    • 2018-08-08
    • 1970-01-01
    • 2023-04-05
    • 2020-02-17
    相关资源
    最近更新 更多