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 | 跳外部、新页面 |

相关推荐
吾诺1 分钟前
Java进阶,时间与日期,包装类,正则表达式
java·mysql·正则表达式
ole ' ola3 分钟前
lambda表达式
java·前端·jvm
蜡台4 分钟前
Flutter 安装配置
android·java·flutter·环境变量
空空潍6 分钟前
保姆级实战教程:Maven私服Nexus搭建
java·maven·nexus
Jinkxs9 分钟前
Java 部署:Jenkins Pipeline 构建 Java 项目(自动化)
java·spring boot
Jinkxs13 分钟前
Java 部署:滚动更新(K8s RollingUpdate 策略)
java·开发语言·kubernetes
a8a30214 分钟前
Spring Boot 3.3.4 升级导致 Logback 之前回滚策略配置不兼容问题解决
java·spring boot·logback
jfqqqqq19 分钟前
win11下intelliJ idea的shift + F6无效
java·ide·intellij-idea
xu_ws21 分钟前
Spring-ai项目-deepseek-7-Function Calling(智能客服)
java·人工智能·spring
会编程的李较瘦23 分钟前
【C语言程序设计学习】一、C语法基础
c语言·开发语言·学习