[개요]
MVC 패턴에서 @RestController은 @Controller와 @ResponseBody의 조합
Spring 프레임 워크에서 RESTful 서비스를 보다 쉽개 개발 할 수 있도록 Spring 4.0에서 추가
@Controller의 역할은 Model 객체를 만들어 데이터를 담고 View를 찾는 것이지만, @RestController는 단순히 객체만을 반환하고 객체 데이터를 JSON 또는 XML형식으로 HTTP 응답에 담아서 전송
@Controller + @ResponseBody를 사용하여 만들 수 있지만 이러한 방식은 RESTful 웹 서비스의 기본 동작이기 때문에 Spring은 @Controller와 @ResponseBody의 동작을 조합한 @RestController를 도입
[Spring에서 @Controller와 @RestController의 역할은 무엇인가?]
@Controller는 view에 표시될 데이터가 있는 Model 객체를 만들고 view를 선택함
@ResponseBody를 사용하여 HTTP ResponseBody에 데이터를 담아 요청을 완료할 수 있음
HTTP ResponseBody에 데이터를 담는 것은 RESTful 웹 서비스에 대한 응답에 유용
-> 왜냐하면 view를 반환하는 대신 데이터를 반환하기 때문
[Spring에서 @RestController와 @Controller의 차이점]
[결론]