본문 바로가기

Web Development/Spring Framework

Model 과 ModelAndView


클라이언트가 요청을 하면 컨트롤러에 진입하여 요청에 대한 작업을 수행하고, View쪽으로 데이터를 전달한다.


View 쪽으로 넘겨 줄 때, Model 객체와 ModelAndView 객체가 존재한다. 


Model 객체 사용법


Model  객체를 파라미터로 받아서 데이터를 View로 전달할 수 있다. 

	@RequestMapping(value="/board/viewContent.do")
	public String viewContent(@ModelAttribute("boardVO") BoardVO boardVO, Model model, HttpServletRequest request) throws Exception{
		int bno = Integer.parseInt(request.getParameter("bno"));
		boardVO.setbno(bno);
		BoardVO resultVO = boardServiceImpl.read(bno); 
		model.addAttribute("result",resultVO);
		return "view";
	}

model.addAttribute("변수 이름","변수에 넣을 데이터값");

model.addAttribute를 통해 View에 넘길 데이터의 이름과 값을 넣는다.

View에서는 ${변수이름}을 이용해서 값을 가져온다.


ModelAndView 객체 사용법



	@RequestMapping(value="/board/viewContent.do")
	public ModelAndView viewContent(HttpServletRequest request) throws Exception{
		int bno = Integer.parseInt(request.getParameter("bno"));
                boardVO.setbno(bno);
		BoardVO resultVO = boardServiceImpl.read(bno); 
		ModelAndView mv = new ModelAndView();
                mv.setViewName("/board/viewContent");
                mv.addObject("result",resultVO );
		return mv;
	}

mv.setViewName("뷰의 경로");

View의 이름을 설정한다.

mv.addObject("변수 이름","데이터 값");

데이터를 보낼 때 사용한다.

마지막으로 ModelAndView 객체를 반환한다.


 


반응형