Mô hình kiến trúc 3 lớp (three layers) có kiểm tra ràng buộc dữ liệu (validation) vận hành trong Java Spring MVC Framework

Các Validation Anotations thường dùng trong Spring Boot

Annotation Diễn giải
@NotNull

dữ liệu không được phép null.

@NotEmpty

dữ liệu không rỗng.

độ dài chuỗi phải > 0.

@NotBlank

dữ liệu không rỗng.

độ dài chuỗi sau khi loại bỏ các ký tự khoảng trắng (dấu cách, tab, ...) phải > 0.

@Length

dữ liệu phải trong độ dài giới hạn.

có thể set thêm thuộc tính min và max để giới hạn độ dài.

@Min and @Max

dữ liệu phải >= Min

dữ liệu phải <= Max

@Pattern dữ liệu phải so khớp đúng theo mẫu biểu thức chính quy (Regular Expression)
@Email dữ liệu phải đúng kiểu email (phải không rỗng, có 1 ký tự @, và phải có domain nào đó...)

@Min và @Max

Ví dụ:

@Length(
  min = 5,
  max = 14,
  message = "Email của tác giả '${validatedValue}' được giới hạn từ {min} đến {max} ký tự."
)
private String authorEmail;

@DecimalMin

Ví dụ:

@DecimalMin(
  value = "5000",
  message = "Giá tiền của sản phẩm ${formatter.format('%1$.2f', validatedValue)} phải lớn hơn {value}đ"
)
private double productPrice;