다음은 두 가지 멤버 변수 name과 price를 가진 간단한 도메인 클래스 Product가 있고 이 멤버 변수의 값에 대한 유효성 검사를 위해 JSR-380 제약 사항의 애너테이션을 선언한 예입니다.
JSR-380 제약 사항의 애너테이션 적용
Product.java
public class Product {
@NotNull ➊
@Size(min=4, max=10) ➋
private String name;
@Min(value=0) ➌
private int price;
// Setter()와 Getter() 메서드
}
➊ Null이 될 수 없습니다. 유효성 검사를 할 때 오류가 발생하면 기본 메시지로 ‘반드시 값이 있어야 합니다.’를 출력합니다.
➋ 최소 4자에서 최대 10자까지 허용합니다. 유효성 검사를 할 때 오류가 발생하면 기본 메시지로 ‘반드시 최솟값 4과(와) 최댓값 10 사이의 크기이어야 합니다.’를 출력합니다.
➌ 최소 0 이상의 값을 허용합니다. 유효성 검사를 할 때 오류가 발생하면 기본 메시지로 ‘반드시 0보다 같거나 커야 합니다.’를 출력합니다.