数据验证
1.数据验证
日常项目开发中,对于前端提交的表单,后台接口接收到表单数据后,为了程序的严谨性,通常后端会加入
业务参数的合法校验操作来避免程序的非技术性bug,这里对于客户端提交的数据校验
SpringBoot通过spring-boot-starter-validation模块包含了数据校验的工作。
这里主要介绍Spring Boot中对请求数据进行校验,相关概念如下
- JSR303/JSR-349: JSR303是一项标准只提供规范不提供实现,规定一些校验规范即校验注解
如@Null,@NotNull, @Pattern, 位于javax.validation.constraints包下。
JSR-349是其升级版本,添加了-些新特性。 - Hibernate Validation: Hibernate Validation是对这个规范的实现,并增加了-些其他校验注解,如
@Email, @Length, @Range等等 - Spring Validation: Spring Validation对Hibernate Validation进行了二次封装,在Spring MvC模块中添加了
自动校验,并将校验信息封装进了特定的类中
2.实体类
public class User implements Serializable {
private int id;
@NotBlank(message = "不为空")//校验注解
private String name;
@Length(min = 6, max = 10, message = "长度")
private String password;
3.service层
@Transactional(propagation = Propagation.REQUIRED)
public User queryUserById(int id){
//int a=1/0;
return userDao.queryUserById(id);
}

浙公网安备 33010602011771号