쌓고 쌓다
Bean Validation의 에러 메시지(코드) 변경 본문
먼저 Bean Validation 사용을 위해 클래스에 어노테이션을 사용했다.
@Data
public class Item {
private Long id;
@NotBlank(message = "공백X")
private String itemName;
@NotNull
@Range(min=1000, max=100000)
private Integer price;
@NotNull
@Max(99)
private Integer quantity;
}
오류 코드는 붙은 어노테이션의 이름을 그대로 따라간다.
예를들어 @NotBlank에서 오류가 발생했다면
NotBlank라는 오류 코드로 다양한 메시지를 생성해낸다.
이때 메시지 생성은 MessageCodesResolver를 통해 생성해낸다.
NotBlank로 생성된 메시지를 보자.
- NotBlank.item.itemName
- NotBlank.itemName
- NotBlank.java.lang.String
- NotBlank
에러 메시지를 등록해보자.
errors.properties
#Bean Validation
NotBlank.item.itemName = 상품명을 적어주세요.
NotBlank = {0}는 공백일 수 없습니다.
Range = {0}, {2} ~ {1} 허용
Max = {0}, 최대 {1}
- {0} : 필드명이 들어간다.
- {1}, {2}, ... : 어노테이션마다 다르다.
Bean Validation 메시지 찾는 순서
- 생성된 메시지 순서대로 errors.properties에서 찾기
- 어노테이션의 message 속성 사용
- 라이브러리가 제공하는 기본 메시지 사용 EX) 공백일 수 없습니다. 널일수 없습니다.
'프로그래밍 > spring' 카테고리의 다른 글
application.properties 값을 필드에 사용하는 법 (0) | 2023.09.16 |
---|---|
[스프링 부트] Form 전송 객체 분리(검증 달리하기) - 30 (0) | 2023.09.14 |
세션 사용하기 (0) | 2023.09.12 |
[스프링 부트] BeanValidation 적용 - 29 (0) | 2023.09.11 |
[스프링 부트] 모든 요청 로그 남기기(필터) - 28 (0) | 2023.09.10 |
Comments