编程自学指南:java程序设计开发,JavaWeb Servlet 跳转、客户端跳转、服务器端跳转学习笔记
一、核心概念与生活类比
定义:
- 服务器端跳转(Forward):服务器内部将请求转发给另一个资源,客户端无感知。
- 客户端跳转(Redirect):服务器通知客户端发起新请求,客户端需重新访问新地址。
生活类比:
- Forward → 餐厅内部转单:顾客点餐后,服务员将订单转给后厨,顾客留在原座位。
- Redirect → 换餐厅就餐:顾客被指引到另一家分店,需自行前往。
二、服务器端跳转(Forward)
1. 核心方法与案例
代码示例:
req.getRequestDispatcher("/target.jsp").forward(req, resp);
应用场景:
- 登录成功后跳转到主页
- 处理表单后显示结果页面
案例:用户注册成功后跳转
@WebServlet("/register")
public class RegisterServlet extends HttpServlet {
protected void doPost(HttpServletRequest req, HttpServletResponse resp) {
// 处理注册逻辑...
req.setAttribute("message"