SpringMVC框架提供的转发和重定向

1.forward请求转发

forward 是 服务器内部跳转 ,特点:

  • URL 不改变
  • 数据可以带过去
  • 不会重新发请求
  • 只能访问当前项目的 JSP(不能跳外部网站)
    适用于:
  • 登录成功后跳转
  • 校验失败回到原页面
  • 转发到 JSP 显示数据
    forward 是请求转发,属于服务器内部跳转。
    返回 String 时如果写成 "forward:/路径",SpringMVC 就不会经过视图解析器,而是直接把请求转给目标 JSP 文件。
    URL 不改变,并且可以携带数据,非常适合做错误提示跳转。
    2.redirect 重定向
    redirect 会让浏览器重新请求指定地址,是客户端跳转。
    不能访问 WEB-INF 下面的 JSP,只能访问对外公开的资源。
    适合跳转到首页、其他 Controller、或者外部链接。
    redirect 和 forward 的区别

|---------------|-------------|---------------|
| 功能 | forward(转发) | redirect(重定向) |
| 是否改变URL? | ❌ 不改变 | ✔ 改变 |
| 是否是一次请求? | ✔ 一次请求 | ❌ 两次请求 |
| 能否访问 WEB-INF? | ✔ 能 | ❌ 不能 |
| 能否带数据? | ✔ 能 | ❌ 不能 |
| 使用场景 | 返回 JSP | 跳外部、新页面 |

相关推荐
大圣编程2 小时前
Java 多维数组详解
java·开发语言
万法若空4 小时前
【算法-查找】查找算法
java·数据结构·算法
殳翰5 小时前
下服务器端开发流程及相关工具介绍(C++)
开发语言·c++
落寞的星星5 小时前
这个对象就包含了已经转换好的DFA和各种词法分析器运转所需要的参数。下一步,我们就可以用ScannerInfo对象创建出Scanner对象,请看下面的代码:
开发语言·c#
nothing&nowhere5 小时前
用 Python 做问卷数据清洗:无效样本检测与处理实战
开发语言·python·数据清洗·数据处理·问卷星·问卷星脚本·刷问卷
2601_961593426 小时前
Rust 开发环境配置繁琐?RustRover 开箱即用搞定编码调试
开发语言·后端·macos·rust
HZZD_HZZD6 小时前
DL/T 645-2026新国标深度解读与智能电表协议适配实战:从帧结构变化到Java采集器升级的全链路改造方案
java·开发语言
多加点辣也没关系9 小时前
JavaScript|第4章:类型转换
开发语言·javascript
聪慧的水蜜桃9 小时前
【YFIOs】用C#开发硬件之设备上云
开发语言·c#