Spring validator常用注解驗證-@NotNull,@NotBlank等常用基礎注解


規則:

@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.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM