Spring MVC ---ModelAndView

ModelAndView(向前台页面传值)

ModelAndView对象中包含了一个model属性和一个view属性。

model:其实是一个ModelMap类型。其实ModelMap是一个LinkedHashMap的子类

view:包含了一些视图信息

当视图解释器解析ModelAndVIew时,其中model本生就是一个Map的实现类的子类。视图解析器将model中的每个元素都通过

request.setAttribute(name,value);添加request请求域中。这样就可以在JSP页面中通过EL表达式来获取对应的值。


ModelAndView中添加数据:

 方法1:可以通过ModelAndView的方法

public ModelAndView addObject(String attributeName, Object attributeValue)

  具体代码

1 ModelAndView mav=new ModelAndView("hello");
2 mav.addObject("time", new Date());

  方法2:由于我们知道其model属性是一个Map的实现类。那么可以通过Map的方法来实现

1 mav.getModel().put("name", "caoyc");

 

  完整代码:

复制代码
1 @RequestMapping("/test")
2 public ModelAndView test(){
3     ModelAndView mav=new ModelAndView("hello");
4     mav.addObject("time", new Date());
5     mav.getModel().put("name", "caoyc");
6     
7     return mav;
8 }
复制代码

  在实例化ModelAndView时,其中参数为视图名称

  

  JSP页面

1 time:${requestScope.time}
2 <br/>
3 name:${name }

  

  显示结果:


你可能感兴趣的:(springmvc)