스프링MVC 컨트롤러는 클라이언트(웹 브라우저)의 요청을 처리하는 기능을 제공한다.
@Controller public class HelloController { @RequestMapping(value = "/hello.do", method=RequestMethod.POST) public String hello(Model model){ model.addAttribute("greeting", "안녕하세요"); return "hello"; } }
위 코드의 경우 웹 브라우저가 “/hello.do” URL을 Post방식으로 요청을 하면 hello()메소드를 이용해서 그 요청을 처리한다고 지정했다.
컨트롤러에서 직접 응답결과를 생성할 수도 있지만, 보통은 결과를 보여줄 때 사용할 뷰이름을 리턴한다.
위 코드에서는 “hello”를 리턴했는데, 스프링MVC는 “hello”에 해당하는 뷰 구현을 찾은 뒤, 해당 뷰를 이용해서 응답 결과를 생성한다.
뷰에서 응답 결과를 생성할 때 데이터가 필요할 수도 있는데, 이때에는 모델에 담긴 데이터를 이용해서 알맞은 응답 결과를 생성하게 된다.