Response 实现重定向

发布时间:2023年12月27日

1.重定向:
重定向作用在客户端,客户端将请求发送给服务器后,服务器响应给客户端一个新的请求地址,客户端重新发送新请求
在这里插入图片描述
在这里插入图片描述


重定向数据传递:
在这里插入图片描述


重定向特点:

  • 重定向是客户端行为。
  • 重定向是浏览器做了至少两次的访问请求。
  • 重定向浏览器地址改变。
  • 重定向两次跳转之间传输的信息会丢失(request范围)。
  • 重定向可以指向任何的资源,包括当前应用程序中的其他资源、同一个站点上的其他应用程序中的资源、其他站点的资源。

重定向特点:
当两个Servlet需要传递数据在同一个站点上的其他应用程序中的资源时,选择forward转发。不建议使用sendRedirect进行传递

2.示例代码(A重定向到B):

AServlet:

@WebServlet(value = "/a")
public class AServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //重定向及传递数据
        resp.sendRedirect("/WebProject_war_exploded/b?username=tom");
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req,resp);
    }
}
12345678910111213

BServlet:

@WebServlet(value = "/b")
public class BServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        //重定向通过请求方式获取数据
        String username=req.getParameter("username");
        System.out.println(username);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        doGet(req,resp);
    }
}
1234567891011121314
文章来源:https://blog.csdn.net/qq_43985303/article/details/135235929
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。