`
tomzhu0526
  • 浏览: 21359 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

请你详细谈一下forward与redirect

阅读更多
作为一个高手,这个应该是小儿科了.但对我来说,简单的谈还可以,详细的说,那还真有点困难,这两天整理了一下.
1.从地址栏显示来说
forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器.浏览器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址.
redirect是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的URL.
2.从数据共享来说
forward:转发页面和转发到的页面可以共享request里面的数据.
redirect:不能共享数据.
3.从运用地方来说
forward:一般用于用户登陆的时候,根据角色转发到相应的模块.
redirect:一般用于用户注销登陆时返回主页面和跳转到其它的网站等.
4.从效率来说
forward:高.
redirect:低.
不知道这样是不是很全了,有不对的地方希望大家给补充完整.
可惜偶当时只回答了1和4两条,好象不符合详细谈谈的标准,呵呵.
分享到:
评论
11 楼 xaxis 2007-05-23  
fins 写道
还有一个很重要:

forward不会走 过滤器


Servlet 2.4 開始forward可以走过滤器, 不過要響web.xml設定
10 楼 lighter 2007-05-23  
补充:
redirect不仅可以重定向到当前应用程序的其他资源,还可以重定向到同一个站点上的其他应用程序中的资源,甚至是使用绝对URL重定向到其他站点的资源.
forward,方法只能在同一个Web应用程序内的资源之间转发请求.
9 楼 fins 2007-05-23  
这算是 客户端发起"请求"  和forward redirect 没有啥关系

forward  是服务器内部的一种操作.
redirect 是服务器通知客户端,让客户端重新发起请求.

所以,你可以说 redirect 是一种间接的请求, 但是你不能说"一个请求是属于forward还是redirect "

8 楼 piaoling 2007-05-23  
form表单提交是属于forward还是redirect
比如:index.jsp有<form>,action="index2.jsp,那么提交后这算是什么呢?
7 楼 tomzhu0526 2007-05-23  
我还是没有总结好,谢谢了.
6 楼 fins 2007-05-23  
还有一个很重要:

forward不会走 过滤器
5 楼 aone 2007-05-23  
总结的不错...
4 楼 tomzhu0526 2007-05-23  
面试的时候应该是说的越详细越好,现在再有哪家问我这样的问题我应该能说到点子上了,呵呵.
3 楼 诺铁 2007-05-23  
谢谢,给你评个精华,呵呵
2 楼 抛出异常的爱 2007-05-23  
1,2很重要。。。别的可以不记。
PS:找bug时要常常记得一些事。。。
(不过我看redirect不顺眼,见到就改掉)
1 楼 lordhong 2007-05-23  
不错了啊!

相关推荐

    jsp forward与redirect实探

    当我们需要在不同的页面之间导航时,`forward`和`redirect`是两种常见的处理请求转发和重定向的方法。本文将深入探讨这两种机制及其区别。 首先,`forward`是通过服务器端内部跳转实现的。它使用`RequestDispatcher...

    forward与redirect!转发和重定向 解析

    ### Forward与Redirect解析 在Web开发中,Forward(转发)与Redirect(重定向)是两种常见的页面跳转方式。它们虽然都可以实现从一个页面跳转到另一个页面的功能,但在实现机制、应用场景以及对用户浏览器地址栏的...

    forward转发与redirect重定向的区别.zip

    在Web开发中,"转发"(Forward)和"重定向"(Redirect)是两种常见的请求处理方式,它们在实现客户端和服务器之间的交互时起到至关重要的作用。了解它们的区别对于优化用户体验和提高应用性能至关重要。 首先,让...

    JAVA面试题之Forward与Redirect的区别详解

    文中详细介绍了两种请求转发方式的原理和区别,包括请求转发的含义、Forward转发请求的原理、Redirect转发请求的原理等。 请求转发的含义 在JAVA web开发中,请求转发是指服务器端将用户的请求转发给其他信息资源...

    转发和重定向的区别 forward和redirect的区别

    然后,你可以获取其他Web应用程序的上下文并进行转发,但这种操作并不常见,因为通常涉及安全性问题。 总结来说,转发和重定向是Java Servlet中处理请求路由的两种重要手段,它们各有优缺点,选择哪种取决于具体...

    Forward 2.71 安装程序

    本文将详细介绍如何安装 Forward 2.71,并探讨其主要功能和使用场景。 首先,我们来了解 Forward 2.71 的安装步骤。在下载的压缩包 "ForwardC271安装程序" 中,包含了安装所需的所有文件。解压这个压缩文件后,你会...

    struts_actionforward.rar_ActionForward_redirect

    ActionForward的使用 1、理解全局和局部ActionForward的概念 2、redirect的使用 3、struts-config.xml文件不允许动态修改 4、理解动态ActionForward,动态的ActionForward是可以运行期修改的

    19.Servlet中forward和redirect的区别.avi

    19.Servlet中forward和redirect的区别.avi

    feed forward equalization 专利

    Embedded wire feed forward equalization Embedded wire feed forward equalization Embedded wire feed forward equalization Embedded wire feed forward equalization Feed-forward optical equalization using ...

    Forward中文版2.7.rar

    forward是一款很有用的软件,在工程方面、测井方面,勘探方面经常用到 Forward for Windows平台提供多种应用挂接方式,如何应用(包括DOS应用) 经方法管理器加入平台后,自动具备各种平台特性(如方法拖拉、接收井...

    Java面试题19.forward和redirect的区别.mp4

    Java面试题19.forward和redirect的区别.mp4

    structs in action中文完全版\6. 连线 ActionForward.pdf

    #### 一、ActionForward的作用与功能 在Struts框架中,ActionForward扮演着至关重要的角色。它不仅负责处理请求之后的流程控制,还能够指导Struts框架下一步应该转向何处。具体而言,ActionForward用于指示Action...

    java中dispcter和forward的区别

    3. 效率:`forward()`通常比`redirect()`更高效,因为它不需要浏览器再次发起请求。 4. 范围:`forward()`通常用于转发到应用程序内部的资源,而`redirect()`可以重定向到任何URL,包括外部站点。 5. 使用场景:`...

    Forward工程技术手册.pdf

    国产地层油气藏测井评价系统forward工程技术手册,提供forward平台各模块的功能细节描述,应与forward用户实用手册配合使用。

    forward用户操作使用手册

    - **1998年**:Watch 2.0的发布,是我国第一套生产测井解释平台,与Forward共享数据底层和平台工具,为后续的勘探开发一体化打下基础。 - **2003年**:随着技术的不断进步,Forward 2.7和Watch 2.7的升级,增强了...

    全能测井解释软件Forward_2.7_最全教程

    全能测井解释软件Forward 2.7是一款专为石油行业设计的强大工具,它集成了多种测井数据处理、分析和解释功能,旨在帮助地质工程师更好地理解地下储层特性。本教程将详细介绍该软件的各项功能和操作流程,为用户提供...

    springMVC3学习 九 redirect和forward跳转 源码

    springMVC3学习 九 redirect和forward跳转 源码 文章地址http: blog csdn net itmyhome1990 article details 26286669

    iptables之forward

    试验环境如上图 防火墙网卡1与客户端在一个物理网络,ftp服务器与http服务器与防火墙网卡2在同一物理网络。...~]# iptables -P FORWARD DROP #FORWARD默认规则置为DROP ~]# setenforce 0 #关闭selinux

    ActionForward与ForwardAction的功能

    【ActionForward与ForwardAction的功能】 在Java EE的Struts框架中,ActionForward和ForwardAction是两个重要的概念,它们主要用于处理用户请求并控制应用程序的流程。理解这两个组件的功能和使用方式对于构建基于...

Global site tag (gtag.js) - Google Analytics