前言
在实际开发中,我们无法保证客户端传来的请求都是合法的。比如一些要求必传的参数没有传递,传来的参数长度不符合要求等,这种时候如果放任不管,继续执行后续业务逻辑,很有可能就会出现意想不到的bug。
有人可能会说,这不是前端的问题吗,让前端校验去。话是这么说,但我们也不能前端校验百分百不会出现问题。并且有些请求可能也不是正规通过客户端发来的,可能是黑客恶意攻击,又或是通过Postman等发来的,这些请求就不一定会“合法”了。
因此,对客户端传来的每个请求都进行必要的参数校验是十分重要的。而很多简单的校验如果都需要程序员自己去写的话,就会导致代码过于冗长、繁琐。为了让校验更加简洁明了,Spring为我们提供了Validation工具类来提供各种校验方法。
一、Validation常见的校验注解
空校验注解:
@Null
:被注释的元素必须为null
。@NotNull
:被注释的元素必须不为null
。@NotBlank
:被注释的字符串去掉前后空格后长度必须非零。@NotEmpty
:被注释的字符串、集合或数组不能为空(字符串长度非零、集合大小非零)。
布尔校验注解:
@AssertTrue
:被注释的元素必须为true
。@AssertFalse
:被注释的元素必须为false
。
日期校验注解:
@Past
:被注释的元素必须是一个过去的日期。<