SpringMVC 转发、重定向
2024-09-04 00:23:37
转发、重定向到其它业务方法
@org.springframework.stereotype.Controller
@RequestMapping("/userController")
public class UserController{ @RequestMapping("/handler1")
public String handler1() throws IOException {
//转发给handler2处理
return "forward:handler2";
} @RequestMapping("/handler2")
public void handler2(HttpServletResponse response) throws IOException {
//......
} }
返回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下的页面,但需要配置资源,
参考:https://www.cnblogs.com/chy18883701161/p/12249175.html
当然,也可以使用servlet的方式来实现:
- 传入HttpServletRequest | HttpServletResponse类型的参数。
最新文章
- C#:注册组件
- spine实现预加载(一)
- mem_fun 例子
- Quartz 2d绘图
- C函数tolower,与toupper
- risc与cisc
- JVM内存状况查看方法和分析工具
- hive的使用和深化理解
- 学习笔记_Java_day12_Cookie
- Java并发3-多线程面试题
- Android集成科大讯飞SDK语音听写及语音合成功能实现
- RabbitMQ安装后启动出错:- unable to connect to epmd on blockstorage: timeout (timed out)
- 变量类型、sprintf、不同类型之间的混合运算
- Spring boot 整合 Mybatis (完整版)
- 移动端click事件无反应或反应慢 touchend事件页面滑动时频繁触发
- Eclipse的各种查找,类的查找,方法查找快捷键
- Harmonic Number(调和级数+欧拉常数)
- GlusterFS配置及使用
- [daily] 内存越界的分析与定位
- js-自加和自减