@RestController
- Spring 4 에서 Rest API 또는 Web API를 개발하기 위해 등장한 애노테이션
- 이전 버전의 @Controller와 @ResponseBody를 포함한다
MessageConverter
@RestController의 동작 방식에서 가장 중요한 부분을 차지하는 것이 MessageConverter이다.
@EnableWebMvc를 사용하면, 기본으로 제공이 된다
[기능]
- 외부에서 전달받은 JSON을, 내부에서 사용할 수 있는 객체로 변환하기
- 내부에서 리턴한 객체가, 클라이언트에게 JSON으로 변환해서 전달
[JSON으로 응답하기]
- 컨트롤러의 메소드에서는 JSON으로 변환될 객체를 반환합니다.
- jackson라이브러리를 추가할 경우 객체를 JSON으로 변환하는 메시지 컨버터가 사용되도록 @EnableWebMvc에서 기본으로 설정되어 있습니다.
- jackson라이브러리를 추가하지 않으면 JSON메시지로 변환할 수 없어 500오류가 발생합니다.
- (즉, jackson 라이브러리 반드시 추가하기)
- 사용자가 임의의 메시지 컨버터(MessageConverter)를 사용하도록 하려면 WebMvcConfigurerAdapter의 configureMessageConverters메소드를 오버라이딩 하도록 합니다.
'Spring > Spring MVC' 카테고리의 다른 글
[Spring] [SpringMVC] 스프링 설정 파일 분리하기 with ContextLoadListener, DispatcherServlet (0) | 2022.09.20 |
---|---|
[Spring] [Spring MVC] 1. Spring MVC 개요 (0) | 2022.09.20 |