请求转发和重定向

当前web应用的根目录  http://localhost:8080/day12

当前web站点目录 http://localhost:8080

1.JSP指令:jsp指令(directive)是为JSP引擎而设计的

他们并不直接产生任何输出,而只是告诉引擎是如何处理JSP页面的

2.在目前JSP2.0定义了page、include、taglib这三种指令

请求转发和重定向

    //1.请求转发
        /*
         * 1.调用HttpservletRequest 的getRequestDispatcher()的方法获取requestDispatcher对象
         * 调用getRequestDispatcher()需要传入要转发的地址
         */
    /*    String path = "testRedirectServlet";
        RequestDispatcher requestDispatcher = request.getRequestDispatcher("/"+path); // tomacat 注解不需要添加“/”
        //2.调用HttpServletRequest的forward(request,response)进行转发
        requestDispatcher.forward(request, response);*/


	
		//执行请求的重定向直接调用response.sendRedirect(path)方法,
		//path,为重定向地址的
		
		String path = "forwardServlet";
		response.sendRedirect(path);
		

本质区别:

请求转发只发出了1次请求,

重定向发出了2次请求;

①:请求转发:地址栏是初次发出请求的地址

请求重定向:地址栏不再是初次发出的请求地址,地址栏位最后响应的那个地址栏

②请求转发:在最终的Servlet中,request对象和中转的那个对象是同一个对象

请求重定向:在最终的Servlet中,request对象中转的那个request不是同一个对象

 

生活中例子: (请求转发)A问B借钱 B没钱,但是B问C借钱,把钱给A;

                       (请求重定向)A问B借钱B说没钱说C有钱,然后A又问C借钱;

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值