https://www.cnblogs.com/caoyc/p/5635782.html
ModelAndView
該對象中包含了一個model屬性和一個view屬性;
model:其實是一個ModelMap類型。ModelMap是一個LinkedHashMap的子類。
view:包含了一些視圖信息。
當視圖解釋器解析ModelAndView時,其中model本身就是一個Map的實現類的子類。視圖解析器將model中的每個元素都通過request.setAttribute(name,value);添加request請求域中。這樣就可以在JSP頁面中通過EL表達式來獲取對應的值。
1、向ModelAndView中添加數據
方法1:可以通過ModelAndView的方法
public ModelAndView addObject(String attributeName,Object attributeValue)
具體代碼:
ModelAndView mav = new ModelAndView("hello");
mav.addObject("time",new Date());
方法2:由於我們知道其model屬性是一個Map的實現類。那么可以通過Map的方法來實現:
mav.getModel().put("name","zhangsan");
完整代碼:
@RequestMapping("/test")
public ModelAndView test(){
ModelAndView mav = new ModelAndView("hello");
mav.addObject("time",new Date());
mav.getModel().put("name","zhangsan");
return mav;
}
在實例化ModelAndView時,其中參數為視圖名稱。
JSP頁面:
time:${requestScope.time}
</br/>
name:${name}
顯示結果:
time:Sat Jul 02 17:35:00 CST 2016
name:zhangsan