美文网首页
转发与重定向的区别和使用

转发与重定向的区别和使用

作者: 可以叫我小崔 | 来源:发表于2022-09-18 14:43 被阅读0次

一,相同之处

用处都是在Servlet中实现页面的跳转功能

二. 重定向与转发的区别:

1.重定向访问服务器两次,转发只访问服务器一次。

2.转发页面的URL不会改变,而重定向地址会改变

3.转发只能转发到自己的web应用内,重定向可以重定义到任意资源路径。

4.转发相当于服务器跳转,相当于方法调用,在执行当前文件的过程中转向执行目标文件,两个文件(当前文件和目标文件)属于同一次请求,前后页 共用一个request,可以通过此来传递一些数据或者session信息,request.setAttribute()和 request.getAttribute()。而重定向会产生一个新的request,不能共享request域信息与请求参数

5.由于转发相当于服务器内部方法调用,所以转发后面的代码仍然会执行(转发之后记得return);重定向代码执行之后是方法执行完成之后进行重定向操作,也就是访问第二个请求,如果是方法的最后一行进行重定向那就会马上进行重定向(重定向也需要return)。

6.无论是RequestDispatcher.forward方法,还是HttpServletResponse.sendRedirect方法,在调用它们之前,都不能有内容已经被实际输出到了客户端。如果缓冲区中已经有了一些内容,这些内容将被从缓冲区中移除。

三,使用场景

如果要保留请求域中的数据,使用转发,否则使用重定向。

以后访问数据库,增删改使用重定向,查询使用转发。

相关文章

  • 重定向和转发

    java 重定向和转发的区别重定向和转发有一个重要的不同:当使用转发时,JSP容器将使用一个内部的方法来调用目标页...

  • 重定向和请求转发的区别

    重定向和请求转发的区别

  • Servlet总结

    Servlet问题总结: 1.Servlet重定向与转发的区别?哪个是重定向?哪个是转发? 答:转发 reque...

  • 转发与重定向的区别和使用

    一,相同之处 用处都是在Servlet中实现页面的跳转功能 二. 重定向与转发的区别: 1.重定向访问服务器两次,...

  • jsp内置对象 转发与重定向的区别

    jsp内置对象 转发与重定向的比较 重定向和转发有一个重要的不同:当使用转发时,JSP容器将使用一个内部的...

  • 关于转发和重定向

    在学习spring的时候,看到forward(转发)和redirect(重定向),于是想弄清楚转发和重定向的区别,...

  • Java请求转发和重定向的区别

    原作者:向右奔跑原博客链接:Java请求转发和重定向的区别 一、请求转发和重定向 1)请求转发: request....

  • 重定向与转发

    请求重定向与请求转发的区别: 1.写法: 转发: request.getRequestsDispatcher.fo...

  • Servlet入门(五)

    重定向与转发的区别: 1.重定向访问服务器两次,转发只访问服务器一次。 2.重定向可以看见目标页面的URL,转发只...

  • 转发与重定向的区别

    转发和重定向的区别1、转发发生在服务器、重定向发生在客户端2、转发是一次请求、重定向是两次请求3、转发地址不发生改...

网友评论

      本文标题:转发与重定向的区别和使用

      本文链接:https://www.haomeiwen.com/subject/epbyortx.html