Java/spring

    @Controller vs @RestController

    @Controller Spring 3에서 주로 사용하던 어노테이션이다. 컨트롤러에 붙여서 사용하며, 뷰(페이지)를 리턴한다. @ResponseBody를 붙이면 JSON이나 XML과 같은 데이터 형식으로도 리턴 가능하다. 실행 흐름은 아래와 같다. 1. DispatcherServlet으로 클라이언트의 요청이 들어온다. 2. DispatcherServlet은 *HandlerMapping을 이용해 요청을 처리할 컨트롤러를 찾는다. 3. 컨트롤러는 적절한 작업을 수행하고, *ModelAndView 객체를 DispatcherServlet으로 리턴한다. 4. DispatcherServlet은 ModelAndView 객체를 *ViewResolver로 보내 사이트에 표시할 페이지를 찾는다. 5. 페이지에 모델 객체를 ..