規則:
@Null 被注釋的元素必須為null
@NotNull 被注釋的元素不能為null
@AssertTrue 被注釋的元素必須為true
@AssertFalse 被注釋的元素必須為false
@Min(value) 被注釋的元素必須是一個數字,其值必須大於等於指定的最小值
@Max(value) 被注釋的元素必須是一個數字,其值必須小於等於指定的最大值
@DecimalMin(value) 被注釋的元素必須是一個數字,其值必須大於等於指定的最小值
@DecimalMax(value) 被注釋的元素必須是一個數字,其值必須小於等於指定的最大值
@Size(max,min) 被注釋的元素的大小必須在指定的范圍內。
@Digits(integer,fraction) 被注釋的元素必須是一個數字,其值必須在可接受的范圍內
@Past 被注釋的元素必須是一個過去的日期
@Future 被注釋的元素必須是一個將來的日期
@Pattern(value) 被注釋的元素必須符合指定的正則表達式。
@Email 被注釋的元素必須是電子郵件地址
@Length 被注釋的字符串的大小必須在指定的范圍內
@NotEmpty 被注釋的字符串必須非空
@Range 被注釋的元素必須在合適的范圍內
示例:
import java.util.Date; import javax.validation.constraints.DecimalMax; import javax.validation.constraints.DecimalMin; import javax.validation.constraints.Email; import javax.validation.constraints.Future; import javax.validation.constraints.Max; import javax.validation.constraints.Min; import javax.validation.constraints.NotNull; import javax.validation.constraints.Size; import lombok.Data; import org.hibernate.validator.constraints.Range; import org.springframework.format.annotation.DateTimeFormat; @Data public class ValidatorPojo { // 非空判斷 @NotNull(message = "id不能為空") private Long id; @Future(message = "需要一個將來日期") // 只能是將來的日期 // @Past //只能去過去的日期 @DateTimeFormat(pattern = "yyyy-MM-dd") // 日期格式化轉換 @NotNull // 不能為空 private Date date; @NotNull // 不能為空 @DecimalMin(value = "0.1") // 最小值0.1元 @DecimalMax(value = "10000.00") // 最大值10000元 private Double doubleValue = null; @Min(value = 1, message = "最小值為1") // 最小值為1 @Max(value = 88, message = "最大值為88") // 最大值88 @NotNull // 不能為空 private Integer integer; @Range(min = 1, max = 888, message = "范圍為1至888") // 限定范圍 private Long range; // 郵箱驗證 @Email(message = "郵箱格式錯誤") private String email; @Size(min = 20, max = 30, message = "字符串長度要求20到30之間。") private String size; }
原文鏈接:
https://blog.csdn.net/qq920447939/article/details/80198438.