Json은 @RestController 에서 가장 많이 사용되는 데이터 형식이다.
현재 대부분의 API는 Request, Response 모두 JSON 형태로 통신한다.
@ResponseBody가 아닌 @RestController를 사용할 수 있는 이유.
@Controller 대신 @RestController를 사용하면 해당 Controller에
메소드 단위에 @ResponseBody가 적용된다.
- Controller의 응답으로 String을 반환하는 경우
@ResponseBody가 없으면 View Resolver가 실행되며 View를 찾고 Rendering한다. @ResponseBody 가 있으면 HTTP Message Body에 return 문자열 값이 입력됨.
@RestController
@ResponseBody가 아닌 @RestController를 사용할 수 있는 이유.
- @Controller 대신에 @RestController를 사용하면
해당 Controller에 모두 메서드 단위에 @ResponseBody가 적용된다
- 즉, @RestController를 사용하는것은 View Template을 사용하는것이 아니다.
- HTTP Message Body에 HTTP Message Converter를 통해 Data를 직접 입력하는것이다.
- Rest API(HTTP API)를 만들 때 사용하는것이 바로 @RestController이다.