본문 바로가기
IT 개발/JAVA

@Controller 와 @RestController 차이점

by Love of fate 2020. 10. 5.
728x90
반응형

[@Controller의 역할 - View]

- Spring MVC의 Controller는 주로 View를 반환하기 위해 사용된다. (Spring MVC Controller)

- Spring MVC Controller는 Client의 요청으로부터 View를 반환한다.

 

* Controller - Data 반환

Spring MVC Controller에서도 Data를 반환해야 하는 경우도 있는데, Spring MVC Controller에서는 데이터를 반환하기 위해 @ResponseBody를 사용한다. 

@ResponseBody를 통해 Json형태로 데이터를 반환할 수 있다.

 

 

[@RestController의 역할 - Json 형태로 객체 데이터 반환]

- @RestController는 Spring MVC Controller에 @ResponseBody가 추가된 것이다.

- @RestController는 Json형태의 객체 데이터를 반환한다. 

 

- Map 형태(key : value) 로 반환


* @Controller는 View로 연결하기 위한 용도로 @Controller를 사용했을 시 데이터를 반환하고자 하는 URI가 있다면 

  @ResponseBody를 사용해야 한다. 

* @RestController는 @ResponseBody 사용 필요 X 

728x90
반응형