标题即问题。
直接上代码:
原:
@ResponseBody
@PostMapping(value = "firefighter/inputData")
@ApiOperation(value = "传入数据")
Result<Void> inputData(@RequestBody @Valid InputDataReqDTO req) {
return Result.ok();
}
入参:
@Getter
@Setter
public class InputDataReqDTO extends ReqDTO {
private static final long serialVersionUID = 5109877828368340334L;
// @Valid
@NotEmpty(message = "传入数据不能为空")
@NotNull(message = "传入数据不能为null")
@ApiModelProperty(value = "学员的消防员学习数据")
@Size(min = 1, max = 1000, message = "一次传入的数据条数范围为1-1000")
List<InputDataItemModel> dataItemList;
}
参数属性类:
@Data
@AllArgsConstructor
@NoArgsConstructor
public class InputDataItemModel extends ReqDTO {
@NotNull(message = "得分不能为null")
@Min(value = 0, message = "得分不能低于0分")
@Max(value = 100, message = "得分不能超过100分")
@ApiModelProperty(value = "得分")
private Integer score;
}
为什么score上面的约束不生效呢???
办法:
给一级参数加上 @Valid 注解即可
。
没什么好说的,这么做生效了,就OK了。