在 Java Web 开发中(主要是 Spring MVC / Spring Boot 环境),Controller 之间的跳转主要有两种方式:重定向(Redirect) 和 转发(Forward)。 以下是具体的实现代码和两者之间的区别。 --- 1. 重定向 (Redirect) 特点: 客户端行为:服务器告诉浏览器“去访问另一个地址”。 URL 会变:浏览器地址栏会变成新的 URL。 请求不共享:这是一个全新的 Request,上一个请求的数据(request 作用域)会丢失,除非使用 Session 或 URL 参数传递。 实现方式 A:返回 String (最常用) 使用 前缀。 实现方式 B:使用 如何在重定向中传递数据? 由于 Request 域不共享,通常使用 (Flash Attributes) 来传递临时数据。 --- 2. 转发 (Forward) 特点: 服务器端行为:服务器内部将请求交给另一个 Controller 处理。 URL 不变:浏览器地址栏显示的还是原来的 URL。 请求共享:使用的是同一个 Request 对象,数据(request.setA...