目录
一、介绍
二、返回值为void
(1)控制层方法
三、返回值为String
(1)控制层
四、返回值为ModelAndView
(1)控制层方法
(2)jsp页面
一、介绍
我们可以通过控制器方法的返回值设置跳转的视图。控制器支持如void,String,ModelAndView类型。
二、返回值为void
返回值是void会跳转到名字是前缀(也就是你前面编写的视图解析器中的)+方法路径名+后缀的jsp页面
(1)控制层方法
@RequestMapping("/test")public void t1(){System.out.println("hello!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!");}
路径是test,方法执行完毕以后会跳转到test.jsp页面中(前提是配置好了视图解析器,不然可能会报错)
三、返回值为String
(1)控制层
此时跳转到的的是前缀+返回值+后缀的jsp页面。
@RequestMapping("/c2/h1")public String t2(){System.out.println("90");return "test";}
四、返回值为ModelAndView
该对象是SpringMvc提供的对象,它可以向request域设置数据并指定跳转的页面。该对象包含Model对象和View对象。
Model:向request域中设置数据。
View:指定跳转的页面
(1)控制层方法
@RequestMapping("/c2/h1")public ModelAndView t3(){//创建ModelAndView对象ModelAndView modelAndView=new ModelAndView();//获取Model对象,本质上是一个MapMap<String,Object> model=modelAndView.getModel();//使用Model对象向request域设置数据model.put("name","大大大大大牛");//使用View对象设置跳转的路径为/test.jspmodelAndView.setViewName("test");return modelAndView;}
(2)jsp页面
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head><title>Title</title> </head> <body> <h1>request=${requestScope.name}</h1> </body> </html>
这里的${requestScope.name}是el表达式写法,所以在web.xml中要添加支持el表达式
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaeehttp://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"version="3.1"> </web-app>