TIL(24.01.22) Model, ModelMap, ModelAndView

DongJun·2024년 1월 22일

Today-I-Learn

목록 보기
37/40

💡 Model

Model
@GetMapping("/")
public String home(Model model) {
    model.addAttribute("name", data);
    return "index";
}

Model인터페이스이다. Controller에서 {key: value} 형태로 Model에 값을 저장하고 View에 이 데이터를 화면에 출력한다.

💡 ModelMap

ModelMap
@GetMapping("/")
public String home(ModelMap modelMap) {
    modelMap.addAttribute("name", data);
    return "index";
}

ModelMap클래스로 Model과 내부적으로 사용하는 객체 타입과 메서드 모두 동일하다.

  • ModelModelMap은 크게 차이점은 없고 둘 다 View에서 사용하려는 데이터를 저장하여 전송 하려는데 의미를 둔다.

💡 ModelAndView

@GetMapping("/")
public String home() {
    ModelAndView modelAndView = new ModelAndView();
    modelAndView.addObject("name", data)
    modelAndView.setViewName("index");
    return "index";
}

ModelAndView는 클래스이며 말 그대로 Model과 View를 동시에 설정 가능하다.

  • 스프링에서 @Controller 어노테이션을 지원한 이후부터 잘 사용하지 않는다고 한다.
profile
성장하기위한 나만의 방법을 꾸준히 찾는중! 협동적 & 성실한 Frontend 개발자를 목표로…

0개의 댓글