hibernate Validation 注解中,@Size、@Length 注解的含义和区别
·
,完整包名是
javax.validation.constraints.Size
,
验证实 体类中 类型是(Array、Collection、Map、String)的属性的长度长度是否在给定的范围之内。
,完整包名是
org.hibernate.validator.constraints.Length
验证 实体类中 String 类型 属性的长度 是否在给定的范围之内。
由于可适用各种类型的长度验证, 具有通用性,推荐使用 。
@Min
验证 Number 和 String 对象是否大等于指定的值@Max
验证 Number 和 String 对象是否小等于指定的值。
public class UserVO {
@NotNull(message = "用户ID不能为空",groups = {Update.class})
private Integer id;
@NotBlank(message = "姓名不能为空")
@Length(message = "姓名位数区间{min}-{max}",min = 2,max = 5,groups = {Insert.class, Update.class})
private String name;//姓名
@Size(message = "爱好最多{max}个爱好",max = 3,groups = {Insert.class, Update.class})
private List<String> hobbyList;
@NotNull(message = "住址不能为空")
@Size(min = 2,max = 4,message = "住址长度{min}-{max}",groups = {Insert.class, Update.class})
private String address;
@Range(message = "年龄必须在{min}-{max}之间", min = 20, max = 40,groups = {Insert.class, Update.class})
private Integer age;
private String sex;
//===========================
@GroupSequence({Insert.class,Update.class})
public interface AllGroup{ }
/**
* 必须继承 Default组,否则groups = {Insert.class, Update.class} 不支持单个校验
*/
public interface Insert extends Default{}
public interface Update extends Default{ }
}
更多推荐
所有评论(0)