保证数据的安全性,传统方式:我们在前台进行Jquery或者JS验证,如果验证通过则提交数据到后台,减轻服务器压力
1.数据校验的实现方式
1.1 导入依赖
<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-validator -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>5.4.1.Final</version>
</dependency>
1.2 在Bean当中加入注解进行验证
public class UserInfo {
@NotNull(message = "用户名不能为空") //代表数据不允许为null
@Length(min = 5,max = 8,message = "用户名不能少于5位或大于8位")
private String username;
@NotNull(message = "年龄不能为空")
@Range(min = 16,max = 60,message = "年龄范围不合法")
private Integer userage;
@Email(message = "邮箱格式不合法")
private String useremail;
@Pattern(regexp = "/^1[3456789]\\d{9}$/",message = "手机号格式不合法")
private String phone;
@Pattern(regexp = "",message = "身份证号格式不合法")
private String usercard;
}
1.3 编写控制器进行控制
@RequestMapping("/register")
public String register(@Valid UserInfo info, BindingResult bindingResult){
//获取异常信息
List<ObjectError> allErrors = bindingResult.getAllErrors();
/*allErrors.stream().forEach(item-> System.out.println(item));*/
if(allErrors.size()>0){
String errorStr = JSON.toJSONString(allErrors);
response.getWriter.write(errorStr);
}else{
System.out.println(info.toString());
}
return "success";
}