一.前言
在日常的开发中,经常需要对方法参数进行校验(非空、长度等)。如果采用hardcode去校验(if..else..),会造成代码冗余,复用性低,导致维护成本比较高。借助Validation组件,可以很方便地通过注解来校验参数。
二.Java Validation组件
JSR
JSR 是一种规范标准,规定了一些校验规范的注解,位于javax.validation.constraints包下,只提供规范不提供实现,如@NotNull,@Size 等
Hibernate Validation
hibernate Validation 与 hibernate ORM框架没有半毛钱关系,它提供了JSR的实现,位于org.hibernate.validator.constraints包下。
三.用法
引入依赖:
javax.validation
validation-api
org.hibernate
hibernate-validator
手动添加bean :
对实体类添加注解:
@Data
publicclassPeople {
@NotNull(message = "姓名不能为空")
privateStringname;
@Min(value = 1, message = "年龄不能小于1岁")
privateInteger size;
}
Controller层上用法: