版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37037492/article/details/83242216
SpringMVC 视图解析的几种方式:
使用jsp进行解析,InternalResourceViewResolver
做解析器
1、使用modelAndView,addObject()方法存储数据,setViewName()方法设置逻辑视图名称
@RequestMapping("querycourse.do")
public ModelAndView list(HttpServletRequest request, HttpServletResponse response) {
List<Course> list = courseService.queryAll();
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("list", list);
modelAndView.setViewName("querycourse");
return modelAndView;
2、使用String,只返回逻辑视图名称,数据自动存储在model中,使用类型的名称作为应用model数据,如这里使用courseList
@RequestMapping("querycourse.do")
public String list(Model model) {
List<Course> list = courseService.queryAll();
//使用courseList作为model名
model.addAttribute(list);
return "querycourse";
}
3、直接return非String和modelAndView,使用“数据”作为返回结果,逻辑视图名称默认为RequestMapping路径的映射结果,使用类型的名称作为应用model数据,如这里使用courseList
@RequestMapping("querycourse.do")
public List<Course> list() {
List<Course> list = courseService.queryAll();
//使用querycourse作为默认视图名
return list;
}
返回String时,视图解析器利用String创建视图的实例,这里是InternalResourceView
的实例
创建视图时,视图包含model,request,response,所以返回string可以访问。