스프링 MVC - 실용적인 방식
컨트롤러V3에서 컨트롤러V4로 만들었던 것을 기억해보자. ModelView를 반환하다가 View의 논리적 이름만 반환해서 코드가 훨씬 간결해졌었다.
스프링의 애노테이션 기반 컨트롤러는 인터페이스 기반으로 설계되어있기 때문에 다형성을 통해 각 메서드들(컨트롤러)는 ModelAndView로 리턴해도 되고, 문자로 리턴해도 된다!
Model 파라미터 : 스프링도 Model을 만들어서 넣어주는 기능을 제공한다!
ViewName 직접 반환 : 뷰의 논리 이름을 반환할 수 있다.
@RequestParam : HTTP 요청 파라미터를 @RequestParam 으로 받을 수 있다.⭐️ String으로 반환되는 것을 자동 형변환까지 가능하다! @RequestParam("username") = request.getParameter("username") GET 쿼리 파라미터, POST Form 방식을 모두 지원한다.
@RequestMapping ➡@GetMapping, @PostMapping URL만 매칭하는 것이 아니라, HTTP Method도 함께 구분할 수 있다. (Get, Post, Put, Delete, Patch 모두 애노테이션이 준비되어 있다.) 이렇게 HTTP 메서드별로 구분해서 코드를 작성하는 이유 여러 side-effect들을 막기 위함이라고 한다. 단순 조회하는 경우에는 GET방식으로만 받는다. 정보의 수정이 일어나는 경우에는 POST 방식으로만 받는다.
Last updated