Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- JVM
- 함수
- jQuery
- sql
- Ajax
- 개념
- CSS
- select
- was
- 배열
- Java
- 태그
- Oracle
- mybatis
- json
- controller
- TO_DATE
- Database
- 과정평가형
- web.xml
- 오류
- input
- POI
- eGov
- spring
- javascript
- array
- eGovFramework
- 암호화
- html
Archives
- Today
- Total
web developer
[java] Model, ModelMap, ModelAndView 본문
728x90
728x90
Model, ModelMap, ModelAndView
스프링의 model 객체에는 Model, ModelMap, ModelAndView가 있다.
위의 3개 객체를 크게 2가지 관점으로 보면, model(ModelMap) vs ModelAndView로 나눌 수 있다.
Model vs ModelMap
[1] Model, ModelMap 공통점
- model.addAttribute("변수명");
- modelMap.addAttribute("변수명");
- 둘 다 addAttribute를 사용함
- Model / ModelMap에 데이터만 저장 후 View (.jsp) 에서 사용목적
[2] Model, ModelMap 차이점
- Model - 인터페이스
- ModelMap - 클래스
[3] 예제
- java
@RequestMapping(value = "/test.do")
public String test (HttpServletRequest request, Model model, ModelMap modelMap){
String modelTest = "Model Test";
String modelMapTest = "ModelMap Test";
model.addAttribute("modelTest", modelTest);
model.addAttribute("modelMapTest", modelMapTest);
return "test";
}
- jsp
<body>
Model 저장한 값 : <input type="text" value="${modelTest}"/>
ModelMap 저장한 값 : <input type="text" value="${modelMapTest}"/>
</body>
Model, ModelMap vs ModelAndView
[1] Model, ModelMap Vs ModelAndView 차이점
- 데이터만 저장한다 vs 데이터와 이동하고자 하는 View Page를 같이 저장한다
[2] ModelAndView
- addObject를 통해 데이터를 저장
- setViewName을 통해 이동하고자 하는 View를 저장 [ mv.setViewName ]
- 메소드 안에서 ModelAndView mv = new ModelAndView();
- return 타입은 ModelAndView [Model, View 모두 리턴 가능]
[3] 예제
- java
@RequestMapping(value = "/test.do")
public ModelAndView test(HttpServletRequest request, Model model, ModelMap modelMap){
ModelAndView mv = new ModelAndView();
mv.addObject("ModelAndView", "ModelAndView Test");
mv.setViewName("test");
return mv;
}
- jsp
<body>
ModelAndView 저장한 값 : <input type="text" value="${modelAndView}"/><br/>
</body>
728x90
728x90
'Framework > Spring [java]' 카테고리의 다른 글
스프링 MVC 구조와 패턴 (2) | 2022.11.06 |
---|---|
[java] @RequestBody , @ResponseBody 어노테이션 (2) | 2022.03.04 |
[spring] 파일 관련 기능: 업로드, 다운로드, 게시글 등록 및 수정, 삭제 (0) | 2022.01.05 |
[spring] Spring IOC, IOC Container ,DI 의미 (0) | 2021.12.23 |
[spring] web.xml (0) | 2021.12.23 |