以下三个注解均是 javax.validation.constraints 包下的,用于属性上的:
@NotEmpty、@NotBlank、@NotNull三种注解的区别
@NotEmpty:用在集合类上面的属性的注解,需要搭配 @Valid 注解使用
@NotBlank:用在String上面属性的注解,需要搭配 @Valid 注解使用
@NotNull:用在基本类型的包装类型上面的属性注解
如下为使用实例:
package com.test.model.bo; import com.test.model.pojo.Book; import lombok.Data; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotEmpty; import javax.validation.constraints.NotNull; import java.util.List; @Data public class BookStateBO { @NotNull private Integer state; @NotBlank private String url; @NotEmpty private List<Book> bookList; }
如果出现错误信息提示:
javax.validation.UnexpectedTypeException: No validator could be found for type: java.lang.Integer,等等,基本上就是注解用在了错误的数据类型上面。
拓展:
javax.validation.constraints 包下还有如下注解可以使用:
完结!