ModelAndView
一、处理模型数据概念:Spring MVC 提供了几种途径输出模型数据,模型数据主要输出到页面ModelMap及 ModelSpring MVC 在内部使用了一个 org.springframework.ui.Model 接口存储模型数据Spring MVC 在调用方法前会创建一个隐含的模型对象作为模型数据的存储容器。如果方法的入参为 Map 或 Model类型,Spring MV...
一、处理模型数据
概念:
Spring MVC 提供了几种途径输出模型数据,模型数据主要输出到页面
ModelMap及 Model
Spring MVC 在内部使用了一个 org.springframework.ui.Model 接口存储模型数据
Spring MVC 在调用方法前会创建一个隐含的模型对象作为模型数据的存储容器。
如果方法的入参为 Map 或 Model类型,Spring MVC 会将隐含模型的引用传递给这
些入参。 在方法体内,开发者可以通过这个入参对象访问到模型中的所有数据,
也可以向模型中添加新的属性数据
Model是每次请求中都存在的默认参数
返回模型数据
利用model其addAttribute()方法或者map的put方法即可将服务器的值传递到页面中
用到Model model必须返回视图 直接return字符串返回视图,
返回的参数放在model里面
页面用EL表达式${获取返回的参数key}
二、ModelAndView
概念
使用ModelAndView类用来存储处理完后的结果数据,以及显示该数据的视图。
从名字上看ModelAndView中的Model代表模型,View代表视图,
这个名字就很好地解释了该类的作用
添加模型数据 :
ModelAndView addObject(String attributeName, Object attributeValue)
ModelAndView addAllObject(Map<String, ?> modelMap)
设置视图:
void setView(View view)(自定义视图)
void setViewName(String viewName)。
下面两种写法是效果一样的
模板文件里写
${name!}
${sex!}
${city!}
@RequestMapping("/getModel")
public String getModel(Model model){
model.addAttribute("name","njl");
model.addAttribute("sex","男");
model.addAttribute("city","北京");
return "/login/getModel";
}
@RequestMapping("/getModelAndView")
public ModelAndView getModelAndView(){
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("/login/getModelAndView");
modelAndView.addObject("name","njl");
modelAndView.addObject("sex","男");
modelAndView.addObject("city","北京");
return modelAndView;
}
更多推荐
所有评论(0)