SpringMVC提供了以下几种途径输出模型数据:
1、ModelAndView:
控制器处理方法的返回值如果为ModelAndView时,则既包含视图信息,也包含模型数据信息。
- springMVC会把ModelAndView的model中的数据放入到request域对象中。
添加模型数据:
- ModelAndView addobject(String attributeName, Object attributeValue)
- ModelAndView addAllObject(Map<String,?> modelMap)
设置视图:
- void setView(View view)
- void setViewName(String viewName)
@RequestMapping("/demo")
public ModelAndView demo(){
String viewName = success;
ModelAndView modelAndView = new ModelAndView(viewName);
//添加模型数据到ModelAndView中
modelAndView.addobject("date", new Date());
return modelAndView;
}
2、Model、ModelMap及Map:
SpringMVC在调用方法前会创建一个隐含的模型对象作为模型数据的存储容器,如果方法的入参为Map或Model类型,SpringMVC会将隐含模型的引用传递给这些入参,方法体内,可以通过这个入参对象访问到模型中的所有数据,也可以向模型中添加新的属性数据。
处理方法入参为以下三种之一时,处理方法返回时,Map中的数据会自动添加到模型中:
- java.uti.Map
- org.springframework.ui.Model
- org.springframework.ui.ModelMap
@RequestMapping("/modelTest")
public String testMap(Model model) {
model.addAttribute("names", Arrays.asList("Tom", "Jack", "Anna"));
return "success";
}
3、@SessionAttributes注解:用法详解
4、@modelattribute注解:用法详解
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。