Redirect和Dispatcher 区别
2014-06-16 10:27
134 查看
使用forward是服务跳转,浏览器不知道它所请求的具体资源来源,浏览器的地址栏不会变; 使用redirect,服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的URL。
request.getRequestDispatcher("test.jsp").forward(request, response);//转发到test.jsp response.sendRedirect("test.jsp");//重定向到test.jsp
重定向:以前的request中存放的变量全部失效,并进入一个新的request作用域。 转发:以前的request中存放的变量不会失效,就像把两个页面拼到了一起。
forward,转发页面和转发到的页面可以共享request里面的数据. redirect,不能共享数据.
相关文章推荐
- dispatcher、redirect和chain三种result type的使用区别
- redirect与dispatcher.forward的区别
- 深入理解dispatcher和redirect的区别
- Redirect和Dispatcher 区别
- Redirect和Dispatcher 区别
- redirect与dispatcher.forward的区别
- Struts2的dispatcher chain redirect和redirectAction的区别
- Struts2的dispatcher,chain,redirect和redirectAction的区别
- 页面的转发(dispatcher)与重定向(redirect)的区别
- redirect与dispatcher.forward的区别
- 简述Struts2中Redirect和Dispatcher的区别
- Struts2中dispatcher与redirect的区别
- 请求转发与重定向的区别(dispatcher和redirect的区别)
- dispatcher、redirect和chain三种result type的使用区别
- Redirect和Dispatcher 区别
- 深入理解dispatcher和redirect的区别
- Struts2的dispatcher chain redirect和redirectAction的区别
- Struts2的dispatcher chain redirect和redirectAction的区别
- [转]dispatcher、redirect和chain三种result type的使用区别
- Response.Redirect和Server.Transfer的区别(转)