转发与重定向的区别
转发和重定向是页面跳转的两种方式
一、转发与重定向的区别
1、转发:浏览器url的地址栏不变。重定向:浏览器url的地址栏改变
2、转发是服务器行为,重定向是客户端行为。转发使用的是getRequestDispatcher()方法;重定向使用的是sendRedirect()。
3、转发是浏览器只做了一次访问请求。重定向是浏览器做了至少两次的访问请求,所以转发速度比重定向速度向快。
4、转发2次跳转之间传输的信息不会丢失(共享request),重定向2次跳转之间传输的信息会丢失,因为重定向产生了新的请求。
二、转发和重定向的选择:
1、重定向的速度比转发慢,一般情况下选择转发,节省资源。
2、在访问当前web的应用程序时,我们用转发,在访问不同web应用程序时,特别是要访问另外一个web站点上的资源的时候,我们就只能使用重定向了。