본문 바로가기
Backend FrameWork/Spring

[Spring Framework] Spring MVC : Model과 ModelAndView 차이

by IsBerry 2018. 12. 28.
반응형

Model과 ModelAndView 차이

 

 



Model과 ModelAndView 차이


  <Model> 예제 

1
2
3
4
5
6
7
8
9
10
11
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.ui.Model;

@Controller
RequestMapping("/model")
public String Model(Model model)
{
  model.addAttribute("name""임수빈");
  
  return "model";
}
cs



<ModelAndView> 예제

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
 
@Controller
@RequestMapping("/modelAndView")
public ModelAndView testModelAndView()
{
   ModelAndView mv = new ModelAndView();
   mv.addObject("name""임수빈");
   
   mv.setViewName("/modelAndView");
  
   return mv;
}
cs


Model파라미터 방식으로 메소드에 (Model model) 파라미터를 넣어주고 String형태로 리턴한다

Model은 값을 넣을 때 addAttribute()를 사용


ModelAndView컴포넌트 방식으로 ModelAndView 객체를 생성해서 객체형태로 리턴한다

MoelAndView는 말그대로 Model과 View를 합쳐놓은 것으로,

값을 넣을때 addObject()를 사용하고, setViewName()으로 보낼 곳 View를 세팅한다



* ModelAndView는 @Controller를 이용하기 전부터 사용했지만, Spirng MVC가 @Controller annotation을

지원하기 시작한 이후로 ModelAndView는 잘사용하지 않는다고 함.





반응형