公众号中分享了一篇文章,关于SpringBoot集成validation校验参数的,粉丝留言说有坑。
原留言如下:
有坑,你试试^A-\\d{12}-\\d{4}$,这条正则经过validate这个方法无论参数写的对不对都会报验证错误,而用main方法测试是正常的。。
话说,针对这种回复我是不太信了,直觉告诉我,肯定是这位粉丝用错了。但既然粉丝有疑问还是需要专门写一个demo来验证一下的。说写就写。
SpringBoot集成validation
集成过程非常简单,在原项目的pom文件中直接引入如下依赖:
org.springframework.boot
spring-boot-starter-validation
引入之后,便可以在项目中使用@Valid等来进行校验了。
这里写一个简单的示例基于@Valid来验证提交的参数是否合法。首先建一个实体类,LoginForm(使用了Lombok):
@Data
public class LoginForm {
@NotBlank(message = "邮箱不能为空")
private String email;
@NotBlank(message = "密码不能为空")
@Length(min = 6,message = "密码长度最小为6位")
private String password;
@NotBlank
@Pattern(regexp = &