스프링 MVC 2 - BindingResult1
반응형
BindingResult1
지금부터 스프링이 제공하는 검증 오류 처리 방법을 알아보자. 여기서 핵심은 BindingResult이다.
우선 코드로 확인해보자.
ValidationItemControllerV2 - addItemV1
코드 변경
- 메서드 이름 변경: addItem() → addItemV1()
- @Slf4j: 로그 출력을 위해 추가
주의
BindingResult bindingResult 파라미터의 위치는 @ModelAttribute Item item 다음에 와야 한다.
필드 오류 - FieldError
FieldError 생성자 요약
필드에 오류가 있으면 FieldError 객체를 생성해서 bindingResult에 담아두면 된다.
- objectName : @ModelAttribute 이름
- field : 오류가 발생한 필드 이름
- defaultMessage : 오류 기본 메시지
글로벌 오류 - ObjectError
ObjectError 생성자 요약
특정 필드를 넘어서는 오류가 있으면 ObjectError 객체를 생성해서 bindingResult에 담아두면 된다.
- objectName : @ModelAttribute의 이름
- defaultMessage : 오류 기본 메시지
validation/v2/addForm.html 수정
타임리프 스프링 검증 오류 통합 기능
타임리프는 스프링의 BindingResult를 활용해서 편리하게 검증 오류를 표현하는 기능을 제공한다.
- #fields : #fields로 BindingResult가 제공하는 검증 오류에 접근할 수 있다.
- th:errors : 해당 필드에 오류가 있는 경우에 태그를 출력한다. th:if의 편의 버전이다.
- th:errorclass : th:field 에서 지정한 필드에 오류가 있으면 class 정보를 추가한다.
- 검증과 오류 메시지 공식 메뉴얼
글로벌 오류 처리
필드 오류 처리
반응형
'Spring' 카테고리의 다른 글
스프링 MVC 2 - FieldError, ObjectError (0) | 2022.08.26 |
---|---|
스프링 MVC 2 - BindingResult2 (0) | 2022.08.25 |
스프링 MVC 2 - 프로젝트 준비 V2 (0) | 2022.08.23 |
스프링 MVC 2 - 검증 직접 처리 - 개발 (0) | 2022.08.23 |
스프링 MVC 2 - 검증 직접 처리 - 소개 (0) | 2022.08.22 |
댓글
이 글 공유하기
다른 글
-
스프링 MVC 2 - FieldError, ObjectError
스프링 MVC 2 - FieldError, ObjectError
2022.08.26 -
스프링 MVC 2 - BindingResult2
스프링 MVC 2 - BindingResult2
2022.08.25 -
스프링 MVC 2 - 프로젝트 준비 V2
스프링 MVC 2 - 프로젝트 준비 V2
2022.08.23 -
스프링 MVC 2 - 검증 직접 처리 - 개발
스프링 MVC 2 - 검증 직접 처리 - 개발
2022.08.23