深入理解java虚拟机 jvm高级与佳三
87.8元
包邮
(需用券)
去购买 >
转发、重定向到其它业务方法
@org.springframework.stereotype.Controller
@RequestMapping("/userController")public classUserController{
@RequestMapping("/handler1")public String handler1() throwsIOException {//转发给handler2处理
return "forward:handler2";
}
@RequestMapping("/handler2")public void handler2(HttpServletResponse response) throwsIOException {//......
}
}
返回String,在里面加上关键字:forward(转发),redirect(重定向)。
(1)如果是转发、重定向到本controller的其它业务方法:
可以写全路径
return "forward:/userController/handler2";
也可以只写子路径,但不要子路径开头的斜杠
不管handler2()是标注为@RequestMapping("/handler2"),还是标注为@RequestMapping("handler2"),都只能这样:
return "forward:handler2";
(2)如果是转发、重定向到其它controller的业务方法,只能写全路径。
转发、重定向到视图
springmvc本来就会把返回的字符串作为视图名解析,然后转发到对应的视图。
转发有2种方式:
不使用关键字forward,可以使用视图解析器
使用关键字forward,但只能写全路径
重定向:
使用关键字redirect,只能写全路径
因为使用关键字forward、redirect时,SpringMVC不会使用视图解析器来解析视图名,也就不能使用视图名拼接,只能写全路径。
示例
在web文件夹下新建1.jsp
return "redirect:/1.jsp";
/表示web文件夹根目录。
可以转发、重定向到html这种静态页面,也可以转发、重定向到WEB-INF下的页面,但需要配置资源,不然会出错,
参考:
当然,也可以使用servlet的方式来实现:
传入HttpServletRequest | HttpServletResponse类型的参数。
原文链接:https://www.cnblogs.com/chy18883701161/p/12248550.html
java 11官方入门(第8版)教材
79.84元
包邮
(需用券)
去购买 >