您的位置:首页 > 编程语言 > Java开发

springmvc之redirect重定向

2016-01-09 16:16 369 查看
java类中跳转链接的方式有两种一种是forword,一种是redirect。

forword是请求服务器资源,是服务器直接访问目标地址的url,把url相应的信息返回给浏览器。然而浏览器并不知道url的地址,所以说地址还是原来的地址。

redirect是服务器端根据逻辑代码返回一个状态码,告诉浏览器去访问最新的url地址。

数据库上说

forword请求的话访问的地址,可以接受request请求的参数。

redirect的话不能共享数据。

运用上面:

forword一般用于请求主页面,登陆成功后,通过用户的角色访问不同的功能。

redirect的话主要用于用户注销操作后跳转主页面的操作。

效率上

forword的效率高

redirect效率低

重定向,其实是两次request, 
第一次,客户端request A,服务器响应,并response回来,告诉浏览器,你应该去B。这个时候IE可以看到地址变了,而且历史的回退按钮也亮了。重定向可以访问自己web应用以外的资源。在重定向的过程中,传输的信息会被丢失。 

例子: 

请求转发是服务器内部把对一个request/response的处理权,移交给另外一个 
对于客户端而言,它只知道自己最早请求的那个A,而不知道中间的B,甚至C、D。 传输的信息不会丢失。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: