modelandview
一、处理模型数据
概念:
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;
}
相关阅读
Model、ModelMap和ModelAndView的使用详解
1.前言 最近SSM框架开发web项目,用得比较火热。spring-MVC肯定用过,在请求处理方法可出现和返回的参数类型中,最重要就是Model和Mod