java 转发与重定向_Java 转发和重定向的区别
转发是服务器行为,重定向是客户端行为
1.转发在服务器端完成的;重定向是在客户端完成的
2.转发的速度快;重定向速度慢
3.转发的是同一次请求;重定向是两次不同请求
4.转发不会执行转发后的代码;重定向会执行重定向之后的代码
5.转发地址栏没有变化;重定向地址栏有变化
6.转发必须是在同一台服务器下完成;重定向可以在不同的服务器下完成
在servlet中调用转发、重定向的语句如下:
request.getRequestDispatcher("index.jsp").forward(request,
response);//转发到index.jsp
response.sendRedirect("index.jsp");//重定向到index.jsp
转发过程:客户浏览器发送http请求,web服务器接受此请求,调用内部的一个方法在容器内部完成请求处理和转发动作,将目标资源发送给客户;在这里,转发的路径必须是同一个web容器下的url,其不能转向到其他的web路径上去,中间传递的是自己的容器内的request。在客户浏览器路径栏显示的仍然是其第一次访问的路径,也就是说客户是感觉不到服务器做了转发的。转发行为是浏览器只做了一次访问请求。
重定向过程:客户浏览器发送http请求,web服务器接受后发送302状态码响应及对应新的location给客户浏览器,客户浏览器发现是302响应,则自动再发送一个新的http请求,请求url是新的location地址,服务器根据此请求寻找资源并发送给客户。在这里location可以重定向到任意URL,既然是浏览器重新发出了请求,则就没有什么request传递的概念了。在客户浏览器路径栏显示的是其重定向的路径,客户可以观察到地址的变化的。重定向行为是浏览器做了至少两次的访问请求的。
重定向,其实是两次request
第一次,客户端request
A,服务器响应,并response回来,告诉浏览器,你应该去B。这个时候IE可以看到地址变了,而且历史的回退按钮也亮了。重定向可以访问自己web应用以外的资源。在重定向的过程中,传输的信息会被丢失。
(来源百度...)
java 转发与重定向_Java 转发和重定向的区别相关推荐
- java实现请求发送_java实现响应重定向发送post请求操作示例
本文实例讲述了java实现响应重定向发送post请求操作.分享给大家供大家参考,具体如下: 关于重定向我们用的比较多的还是redirect:重定向,默认发送的get请求. return "r ...
- java post重定向_java实现响应重定向发送post请求操作示例
本文实例讲述了java实现响应重定向发送post请求操作.分享给大家供大家参考,具体如下: 关于重定向我们用的比较多的还是redirect:重定向,默认发送的get请求. return "r ...
- java 二进制流转图片_java转发二进制图片流【原】
packagecom.rosellete.iescp.cshop.tool.http;importjavax.servlet.http.HttpServletResponse;import java. ...
- java两种异常_JAVA两种异常的区别 (转)
Java提供了两类主要的异常:runtime exception和checked exception.所有的checked exception是从java.lang.Exception类衍生出来的,而 ...
- java与c语言_Java与C语言的区别之我见
Java 是由C++演变而来的,而C++却是由C 演变而来的,Java与C既有相同 的地方,但是也具备了各自的特点. 一.Java的特点 1.平台独立性 2.面向对象的技术 3.多线程 4.动态性 5 ...
- java内省的意思_java内省和反射的区别
展开全部 经过多方面的资料搜集整理,写下了这篇文章,本文主要讲解java的反射和内e68a843231313335323631343130323136353331333363366237省机制,希望对 ...
- java中null与_java中NULL与 的区别
null和""的区别 问题一: null和""的区别 String s=null; string.trim()就会抛出为空的exception String s ...
- java notify什么意思_Java notify和notifyAll的区别和相同
经常在往上逛,关于在java中notify和notifyAll,经常有人有以下的说法: notify只会通知一个在等待的对象,而notifyAll会通知所有在等待的对象,并且所有对象都会继续运行 并且 ...
- java 构造方法和成员方法_java构造方法和成员方法的区别
构造方法和成员方法的区别 1.构造方法 构造方法作用概述 给对象的数据进行初始化 构造方法格式 方法名与类名相同 没有返回值类型,连void都没有 没有具体的返回值 构造方法注意事项 如果你不提供构造 ...
最新文章
- c语言可视化_这些算法可视化网站助你轻松学算法
- java实现排序二叉树
- 初创公司MongoDB最佳实践策略和躲坑秘笈
- Flutter State 的生命周期
- Visual C++——黄维通《 Visual C++面向对象与可视化程序设计》——例题9-3
- 计划doing.....
- 石川:股票多因子模型的回归检验
- 科大讯飞语音合成的引入
- 深度学习简明教程系列 —— 经典模型(合集)
- WebService测试工具,提供下载链接
- Hbase、Kudu和ClickHouse横向对比V2.0
- 男生拍照姿势大全,这样拍才帅
- Mybatis批量update修改实例
- CVPR 2021 华南理工和微信的Transformer:UP-DETR无监督预训练检测器
- 001.flink内存分配机制
- Excel技巧—名称框的妙用
- library Interpositioning 库(内插)干预技术
- python实现erp系统后端_python开发erp教程《PYTHON编一套完整ERP系统,15万元能下来吗》...
- 飞腾S2500平台PCIe SWITCH下热插拔验证
- C语言/771.宝石与石头