redirect forward区别 转发和重定向的区别 在springmvc 中的应用
2017-08-18 16:43
351 查看
1.从地址栏显示来说
Http中200、302、304、404和500等响应状态码所表示的意义?
200:访问成功(表示一切正常,返回的是正常请求结果)
302:临时重定向(指出被请求的文档已被临时移动到别处,此文档的新的URL在Location响应头中给出)
304:未修改(表示客户机缓存的版本是最新的,客户机应该继续使用它。)
404:访问的文件不存在(服务器上不存在客户机所请求的资源)
500:内部服务器错误(服务器端的CGI、ASP、JSP等程序发生错误)
forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器.浏览器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址. redirect是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的URL. 2.从数据共享来说 forward:转发页面和转发到的页面可以共享request里面的数据. redirect:不能共享数据. 3.从运用地方来说 forward:一般用于用户登陆的时候,根据角色转发到相应的模块. redirect:一般用于用户注销登陆时返回主页面和跳转到其它的网站等. 4.从效率来说 forward:高. redirect:低.来源: https://zhidao.baidu.com/question/353280082.html
Redirect重定向
Contrller方法返回结果重定向到一个url地址,如下商品修改提交后重定向到商品查询方法,参数无法带到商品查询方法中。//重定向到queryItem.action地址,request无法带过去return "redirect:queryItem.action"; redirect方式相当于“response.sendRedirect()”,转发后浏览器的地址栏变为转发后的地址,因为转发即执行了一个新的request和response。由于新发起一个request原来的参数在转发时就不能传递到下一个url,如果要传参数可以/item/queryItem.action后边加参数,如下:/item/queryItem?...&…..forward转发
controller方法执行后继续执行另一个controller方法,如下商品修改提交后转向到商品修改页面,修改商品的id参数可以带到商品修改方法中。//结果转发到editItem.action,request可以带过去return "forward:editItem.action"; forward方式相当于“request.getRequestDispatcher().forward(request,response)”,转发后浏览器地址栏还是原来的地址。转发并没有执行新的request和response,而是和转发前的请求共用一个request和response。所以转发前请求的参数在转发后仍然可以读取到。Http中200、302、304、404和500等响应状态码所表示的意义?
200:访问成功(表示一切正常,返回的是正常请求结果)
302:临时重定向(指出被请求的文档已被临时移动到别处,此文档的新的URL在Location响应头中给出)
304:未修改(表示客户机缓存的版本是最新的,客户机应该继续使用它。)
404:访问的文件不存在(服务器上不存在客户机所请求的资源)
500:内部服务器错误(服务器端的CGI、ASP、JSP等程序发生错误)
相关文章推荐
- 重定向与请求转发的区别以及在springmvc中重定向的使用
- java中web应用中重定向与转发的区别
- java中web应用中重定向与转发的区别
- java中web应用中重定向与转发的区别
- SpringMVC:请求转发与重定向区别
- java中web应用中重定向与转发的区别
- 简单谈谈SpringMVC转发和重定向的区别
- Servlet应用中重定向与请求转发的区别
- forward(转发)和redirect(重定向)的区别
- 转发与重定向的区别
- 请求转发和重定向的区别
- 转发和重定向的区别
- 深入浅出Java 重定向和请求转发的区别
- 请求转发与重定向的区别
- 转发重定向的区别
- JavaWeb应用中重定向与跳转的区别
- jsp重定向与转发的理解和区别
- struts2中的跳转详解 ----“请求转发”和“重定向”之间的区别
- 在SpringMVC中关于转发和重定向的路径问题
- Java 转发和重定向的区别