加载中...
加载中...
java中转发和重定向

java中转发和重定向 原创

 转发:

request.getRequestDispatcher("success.jsp").forward(request,response);

重定向:

response.sendRedirect("success.jsp");


1.转发:用户发送请求到服务器,服务器收到请求直接跳转到所要跳转的页面,所以页面跳转由服务器来执行。
重定向:用户发送请求到服务器,服务器收到请求把所要跳转的页面路径反馈给客户端,告诉它去跳转到那个页面,然后客户端在跳转到所要执行的页面。


2.通常情况下转发更快,而且能保持request内的对象,所以他是第一选择。但是由于在转发之后,浏览器中URL仍然指向开始页面,此时如果重载当前页面,开始页面将会被重新调用。


3.重定向:以前的request中存放的变量全部失效,并进入一个新的request作用域。
转发:以前的request中存放的变量不会失效,就像把两个页面拼到了一起。 


4.重定向的原理是服务器返回一个301/302的状态码,以及新的网址,客户端浏览器收到以后再请求新的页面。
转发则在客户端看来和直接返回了页面没有任何分别。转发相当于服务器做了反向代理。

转发:地址栏为转向前的URL
重定向:地址栏为转向后的URL

转发:一次请求
重定向:两次请求

转发:request里的信息会传递给处理程序2
重定向:request里的信息不会传递给处理程序2


没有更多推荐了 [去首页]
image
文章
357
原创
284
转载
73
翻译
0
访问量
199056
喜欢
47
粉丝
6
码龄
5年
资源
0

文章目录

加载中...
0
0