로딩
요청 처리 중입니다...

Controller vs RestController

 Controller  vs RestController

1.개요 Spring MVC의 @RestController은 @Controller와 @ResponseBody 조합입니다. Spring 프레임워크에서 RESTful 웹 서비스를 보다 쉽게 개발할 수 있도록 Spring 4.0에서 추가되었습니다.

가장 큰 차이점은 @Controller는 Model 객체를 만들어 데이터를 담고 View를 찾는 것이지만, @RestController는 단순히 객체만을 반환하고 객체 데이터는 JSON 또는 XML 형식으로 HTTP 응답에 담아서 전송합니다. @Controller와 @ResponseBody를 사용하여 만들 수 있지만 이러한 방식은 RESTful 웹서비스의 기본 동작이기 때문에 Spring은 @Controller와 @ResponseBody의 동작을 조합한 @RestController을 도입하였다. // 다음 두 코드는 동일한 동작을 한다.

@Controller @ResponseBody public class MVCController{ logic....