코딩과 결혼합니다

230707 - Spring @Controller와 @RestController 차이 본문

2세/Spring

230707 - Spring @Controller와 @RestController 차이

코딩러버 2023. 7. 7. 01:24
728x90

@Controller

주로 View를 반환하기 위해 사용한다.

1. 클라이언트는 URI 형식으로 웹 서비스에 요청을 보낸다.

2. DispatcherServlet이 요청을 처리할 대상을 찾는다.

3. HandlerAdapter를 통해 요청을 Controller로 위임한다.

4. Controller는 요청을 처리한 후에 ViewName을 반환한다.

5. DispatcherServlet은 ViewResolver를 통해 ViewName에 해당하는 View를 찾아 사용자에게 반환한다.

 

 

❓Data를 반환해야 하는 경우에는

@ResponseBody 어노테이션을 활용해주어야 한다. - Json 형태로 데이터를 반환

 

 

@RestController

@Controller 에 @ResponseBody가 추가된 것이다. 주용도는 Json형태로 객체 데이터를 반환하는 것이다.