Model과 차이점은 Model은 데이터만 저장하는데,
ModelAndView는 데이터와 이동하고자 하는 View Page를 같이 저장한다
메소드 | 내용 |
---|---|
setViewName(String view) | 응답할 view 이름을 설정 |
addObject(String name, Object value) | view에 전달할 값을 설정 |
addAllObject(Map values) | view에 전달할 값을 Map에 name-value로 저장하여 한번에 설정 |
@RequestMapping("/api/member")
public ModelAndView view(){
//데이터와 뷰를 동시에 설정 가능하다
ModelAndView mv = new ModelAndView();
mv.setViewName("/api/member"); //뷰의 이름
mv.addObject("data", "123");
return mv;
반환값으로 ModelAndView 객체를 반환한다.
ModelAndView 객체를 선언 및 생성한다.
뷰의 이름을 설정해줘야 하는데,
setViewName() 메소드를 이용한다.
mv.setViewName("뷰의 경로");
데이터를 보낼때는 addObject() 메소드를 이용한다.
mv.addObject("변수 이름", "데이터 값");
그리고
return mv;
ModelAndView 객체를 반환한다.
jsp단에서도 똑같이 EL언어를 사용 ${} (Body 내에)
Data : ${}