引言
在实际项目我们需要对客户端传递到服务端的参数进行校验,用于判定请求参数的合法性,假如请求参数不合法, 不可以再去执行后续的业务了。那如何校验呢?一种方式是我们在控制层方法中每次都自己进行参数有效值的判断, 不合法可以抛出异常,但是工作量和代码复杂度会比较高。第二种方式就是采用市场上主流的Spring Validation 框架去实现校验。
Spring Validation的基本应用
第一步:添加依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
第二步:通过注解对Controller类、方法参数、dto对象中的属性进行描述
对WeiboDTO中的Content属性进行NotNull标注
@Data
public class WeiboDTO {
// 微博内容
@NotBlank(message = "content can not be empty string") //不允许为空串
private String content;
}
对WeiboController方法中的参数添加@Validated注解描述
@PostMapping("insert")
@ApiOperation(value =