참고 : https://velog.io/@jinheesung/%EC%88%98%EC%A0%95%EC%A4%91-a4rboxza
주요 생성자 :
ModelAndView(String viewName)
응답할 view
ModelAndView(String viewName, Map values)
응답할 view와 view로 전달할 값들을 저장한 Map 객체
ModelAndView(Stirng viewName, String name, Object value)
응답할 view이름, view로 넘길 객체의 name 과 value
주요 메소드 :
setViewName(String view)
응답할 view이름 설정
addObject(String name, Object value)
view에 전달할 값을 설정
addAllObject(Map values)
view에 전달할 값을 Map에 name-value로 저장하여 한번에 설정
참고 : https://highseekmj.tistory.com/19
추가적으로
Model과 ModelAndView의 구체적인 차이를 설명하자면
Model -> model.addAttribute를 사용하여 데이터만 저장
ModelAndView -> 데이터와 이동하고자 하는 View Page를 같이 저장
참고 : https://homesi.tistory.com/entry/Model-%EA%B3%BC-ModelAndView
예) ModelAndView mv = new ModelAndView();
데이타 추가는 addObject(key, value) 로 추가하며,
페이지 이동값은 setViewName로 페이지를 셋팅한다.
return 값은 ModelAndViewe(위에는 mv)로 돌려준다.