Servlet中forward和redirect的区别:
1)从地址栏显示看
forward是服务器请求资源,服务器直接访问目标地址的URl,把那个URl的响应内容读取过来,
然后把这些信息发送给浏览器。浏览器根本不知道服务器发送的内容从哪里来的,所以forward(转发)
发送数据地址栏不变。
redirect是服务器端根据业务逻辑发送状态码,重新告诉浏览器去请求哪一个地址,所以地址栏发生改变。
2)从共享的数据看
forward :转发页面和转发到的页面可以共享request里面的数据,forward会将request state ,bean等信息带到下一个jsp页面。
redirect:不能共享数据,但是可以重定向到当前应用程序的其他资源,也可以重定向到同一个站点上的其他应用程序的资源。
3)从运用的地方来看
forward:一般用于用户登录的时候,根据角色转发到相应的模块。
redirect:一般用户注销登录时,返回主页和跳转到其他站点等。
4)从效率来看
forward的效率比redirect的高,forward是服务器内部的转发,而redirect则是服务器收到请求后发送一个状态给客户,客户再请求一次,其中经过两次网络通信。
Servlet中forward和redirect的区别
原创
©著作权归作者所有:来自51CTO博客作者钟渊博客的原创作品,请联系作者获取转载授权,否则将追究法律责任

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
forward 和 redirect 的区别?
forward 和 redirect 的区别?
重定向 页面跳转 请求转发 -
jsp中redirect和forward的区别
在网上看到一些帖子,总结了一些区别,可以从以下几个方面来
redirect forward 服务器 html 重定向 -
重定向(redirect)和转发(forward)的区别
,无论服务器内部如何处理,作为客户端浏览器都只提交了一个请求,因而客户端的的URL地址不会发生改变。转发:浏览器第一次请求后,Web服务器向浏
redirect forward 重定向 转发 客户端