Servlet API中forward()与redirect()的区别?

a、从地址栏显示来说

forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器.浏览 器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址.
redirect是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的URL.所以redirect等于客 户端向服务器端发出两次request,同时也接受两次response。
b、从数据共享来说
forward:转发页面和转发到的页面可以共享request里面的数据.redirect:不能共享数据.redirect不仅可以重定向到当前应用程序 的其他资源,还可以重定向到同一个站点上的其他应用程序中的资源,甚至是使用绝对URL重定向到其他站点的资源.forward方法 只能在同一个Web应用程序内的资源之间转发请求.forward 是服务器内部的一种操作.redirect 是服务器通知客户端,让客户端重新发起请求.所以,你可以说 redirect 是一种间接的请求, 但是你不能说"一个请求是属于forward还是redirect "。
c、从运用地方来说
forward:一般用于用户登陆的时候,根据角色转发到相应的模块. redirect:一般用于用户注销登陆时返回主页面和跳转到其它的网站等.

d、从效率来说
forward:高. redirect:低.

Servlet API中forward()与redirect()的区别?相关推荐

  1. Java Web中Forward和redirect的区别

    导读:Servlet有三种协作方案:Forward协作.Include协作.重定向协议(Redirect). include协作就是一个servlet包含了另一个servlet的全部内容 那么,For ...

  2. Servlet中forward和redirect的区别(转)

    forward方式:request.getRequestDispatcher("/somePage.jsp").forwardrequest, response);      re ...

  3. java中forward和redirect_jsp中forward和redirect的区别

    (1)       共同点: 都实现了根据自己的条件实现的页面的跳转. (2)       区别 类别 概念 共享数据 应用 Redirect URL重新定向:可以是任意的URL 不能共享reques ...

  4. java中forward和redirect_好程序员Java教程分享:Forward和Redirect的区别

    Java教程分享:Forward和Redirect的区别,用户向服务器发送了一次HTTP请求,该请求可能会经过多个信息资源处理以后才返回给用户,各个信息资源使用请求转发机制相互转发请求,但是用户是感觉 ...

  5. forward 和 redirect 的区别?

    forward 和 redirect 的区别? 浏览器 url 地址显示不同 服务端通过 forward 返回,浏览器 url 地址不会发生变化:服务器通过 redirect 返回,浏览器会重新请求, ...

  6. jsp中forward与sendRedirect的区别

    https://blog.csdn.net/cation/article/details/4278687 http://www.cnblogs.com/davidwang456/p/3998013.h ...

  7. forward和redirect的区别

    2019独角兽企业重金招聘Python工程师标准>>> 1.从地址栏显示来说  forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把 ...

  8. forward 和redirect的区别

    1.从地址栏显示来说 forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器.浏览器根本不知道服务器发送的内容从哪里来的,所以它的地 ...

  9. JSP下Forward和Redirect的区别分析

    forward: (an internal transfer in servlet).RequestDispatcher.forward()方法 服务器内部重定向,程序收到请求后重新定向到另一个程序, ...

最新文章

  1. OpenStack环境搭建(一:Virtual Box 5.1 环境的安装及配置)
  2. 模拟usb重新插拔_Android 10带来黑科技 检测手机USB接口是否有液体或者是否过热...
  3. MyBatis入门示例
  4. 数据结构-王道2017-第3章 栈和队列-队列
  5. python安装要钱吗-python语言是免费还是收费的?
  6. docker下,一行命令搭建elasticsearch6.5.0集群(带head插件和ik分词器)
  7. 【论文解读】SIGIR 2020 | 超越用户embedding矩阵:用哈希对大型用户建模
  8. 初学Java开发,有哪些从业方向可以选择?
  9. 数值范围_数值模拟在铸造业中的发展
  10. ubuntu制作usb启动盘
  11. 配置本地及网络yum源(详细步骤)
  12. 洛谷 P2596 [ZJOI2006]书架 解题报告
  13. c/c++读取txt文件中指定行的内容_和尧名大叔一起从0开始学Python编程-简单读写文件
  14. linux 下socket通信,client断开service退出解决办法
  15. SQL简单基础(1)
  16. 人民银行计算机机房,中国人民银行行计算机中心机房管理详细规定.doc
  17. 利用 DIAMOND、MCScanX、TBtools 分析物种基因组间的共线性区段与基因复制事件
  18. 魅蓝s6手机sim卡不显示无服务器,科普OPPOA57怎么截图及魅蓝S6怎么插卡
  19. 二维码支付的优势与劣势
  20. 【面试】大佬是如何面试别人List相关知识的

热门文章

  1. 今天给大家普及一下隐藏优惠券!!
  2. 解决ReactNative老项目跑不起来的问题
  3. 九个问题从入门到熟悉HTTPS
  4. 数据可视化项目【一】基础配置
  5. 个人作业4——alpha阶段个人总结
  6. 渗透测试-2022红队必备工具列表总结​
  7. CAD,怎么修改图纸的比例尺
  8. 外包企业名录 - List of Outsourcing Enterprises
  9. Python 之父入职微软要搞事?!给大家推几本书压压惊
  10. 超100篇!CVPR 2020最全GAN论文梳理汇总!