为什么重定向是响应,转发和包含是请求,以及他们之间的区别

博客主要探讨了信息技术领域中重定向(sendRedirect)、转发(forward)和包含(include)的使用场景问题,帮助开发者明确在不同情况下应选择何种方式进行页面处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

总结一:
重定向:是服务器对客户端做出的响应,让客户端重新请求request面

转  发:转发是服务器去自己去请求新的页面,而不做出响应,做出响应应该是新页面的事情
总结二

什么时候用重定向(sendRedirect),什么时候用转发(forward),什么时候用包含(include)

重定向:会重新请求一次,所以地址栏会显示重新请求的地址,而且
requestresponse都会重新生成

转  发:只是服务器内转发,地址栏还是i显示请求的地址,并且requset和response数据还在,但是体内信息不存在了,也就是响应数据
包  含:和转发一样,但是响应数据还在
public class LoginServlet extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        if (username.equals("ouyang")){
            HttpSession httpSession = request.getSession();
            httpSession.setAttribute("username",username);
            response.sendRedirect("/welcome.jsp");
        }else{
            request.setAttribute("warn","登陆失败,请重新登陆");
            request.getRequestDispatcher("/login.jsp").forward(request,response);
        }
        response.getWriter().println("123");
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值