Spring MVC 是一个基于Java的实现了MVC设计模式的Web框架,它使用了ModelAndView对象来封装视图和模型数据。
原理:
当控制器方法处理完请求后,它会返回一个ModelAndView对象。
ModelAndView对象包含了视图名和模型数据。
Spring MVC会根据视图名找到对应的视图解析器,将模型数据传递给视图。
视图解析器会根据视图名和模型数据生成最终的响应。
用法:
ModelAndView mav = new ModelAndView();
mav.setViewName(“viewName”);
mav.addObject(“key”, value);
return mav;
${key}
通过使用ModelAndView,控制器可以将处理结果以及需要渲染的视图名一起返回给Spring MVC框架,框架会根据视图名找到对应的视图解析器,并将模型数据传递给视图进行渲染,最终生成响应返回给客户端。这种方式可以更灵活地处理模型数据和视图,并且支持多种类型的视图,如JSP、Thymeleaf、Freemarker等。