개발하는 자몽

Bean Validation - HTTP 메시지 컨버터 본문

Java

Bean Validation - HTTP 메시지 컨버터

jaamong 2023. 3. 13. 16:45

 

 

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의

웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있

www.inflearn.com

섹션 5. 검증 2 - Bean Validation

 

 

 

 

 

Validator인 @Valid, @ValidatedHttpMessageConverter(@RequestBody)에도 적용할 수 있다.

@ModelAttribute의 경우 각 필드 단위로 세밀하게 적용된다. 따라서 특정 필드에 타입이 맞지 않는 오류가 발생해도 나머지 필드는 정상 처리할 수 있다.

HttpMessageConverter@ModelAttribute와 다르게 필드 단위로 적용되는 것이 아닌, 전체 객체 단위로 적용된다. 때문에 메시지 컨버터의 작동이 성공해서 Item 객체(domain)를 만들어야 @Valid, @Validated가 적용된다. 자세히는, HttpMessageConverter가 정상 동작하여 Json이 객체로 변경이 되어야 검증(@Valid, @Validated)을 할 수 있다. 즉, 객체로 변경되지 않으면 컨트롤러도 호출되지 않고, Validator도 적용할 수 없다.

 

(@RequestBody를 적용한다는 뜻은 view를 반환하는 것이 아닌 json 등의 형태로 반환한다는 의미. 정말 쉽게 이해하려면...  @Controller(view 반환)가 아니라 @RestController(json 반환)를 적용한다고 보면 된다))

'Java' 카테고리의 다른 글

리플렉션(Reflection)  (0) 2023.03.28
동시성 문제와 쓰레드 로컬  (0) 2023.03.22
Bean Validation - 에러 코드  (0) 2023.03.10
Class.isAssignableFrom  (0) 2023.03.08
체크 예외, 언체크 예외  (0) 2022.09.22
Comments