ModelAndView是什么以及它的作用是什么
简单理解它是将后台返回的数据传递给View
层,同时包含一个要访问的View
层的URL
地址
当控制器处理完请求后,通常控制器会将包含视图名称以及一些模型属性的ModelAndView
对象返回给DispatcherServlet
。因此,在控制器中会构造一个ModelAndView
对象
ModelAndView作用:
①设置转向地址
②将底层获取的数据进行存储(或者封装)
③最后将数据传递给View
ModelAndView的第一种用法,先创建ModelAndView
对象,再通过它的方法去设置数据与转发的视图名
setViewName(String viewName)
:ModelAndView实例视图名addObject(String attributeName, Object attributeValue)
:通过key/value的方式绑定数据
public ModelAndView hello() {
ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("hello");
modelAndView.addObject("message", "Hello World");
return modelAndView;
}
ModelAndView的第二种方法,可以直接通过带有参数的构造方法 ModelAndView(String viewName, String attributeName, Object attributeValue)
来返回数据与转发的视图名
public ModelAndView m07() {
return new ModelAndView("hello", "message", "Hello World");
}