`
LiYunpeng
  • 浏览: 942818 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类
最新评论

Java重定向sendRedirect与请求转发的区别

    博客分类:
  • Java
阅读更多
此内容纯属COPY


请求重定向与请求转发的比较,HttpServletResponse.sendRedirect方法和RequestDispatcher.forward方法都可以让浏览器获得另外一个URL所指向的资源,但两者的内部运行机制有很大的区别。

1.RequestDispatcher.forward方法只能将请求转发给同一个Web应用中的组件,HttpServletResponse.sendRedirect不仅可以重定向到当前应用程序的其他资源,还可以重定向到痛一个站点上的其他应用程序的资源,甚至是使用绝对URL重定向到其他站点的资源。对于sendRedirect如果传递的URL以"/"开头,他是相对于整个Web站点的根目录;对于forward如果传递的URL以"/"开头,它是相对于当前Web应用程序的根目录。

2.sendRedirect对浏览器做出的响应是重新发出对另外一个URL的访问请求,forward在服务器端内部将请求转发给另外一个资源,浏览器只知道发出了请求并得到了响应结果

3.forward的调用者与被调用者之间共享相同的request对象和response对象,他们属于痛一个访问请求和响应过程;sendRedirect的调用者与被调用者使用各自的request和response对象,属于两个独立的访问请求和响应过程。


spring中使用的是redirect 和 forward
分享到:
评论

相关推荐

    servlet请求转发、重定向、包含

    Servlet请求转发、重定向和包含是Servlet中处理客户端请求的重要技术,它们都涉及到如何有效地管理用户请求和页面跳转,但各自有不同的特性和应用场景。 1. **请求转发(Request Forward)** - 请求转发是在服务器...

    请求重定向个请求分派

    * 请求分派只能将请求转发给同一个 Web 应用程序中的其他组件,而重定向不仅可以定向到当前应用程序中的其他资源,也可以重定向到其他站点的资源上。 * 重定向的访问过程结束后,浏览器地址栏中显示的 URL 会发生...

    javaServlet请求转发和重定向.pdf

    Java Servlet 请求转发和重定向 Java Servlet 请求转发和重定向是两种不同的页面跳转机制,它们在 Web 应用程序中扮演着重要的角色。理解这两种机制的区别和使用场景是非常重要的。 请求转发是指将请求再转发到另...

    请求转发与重定向详解代码

    请求转发与重定向有以下显著区别: 1. **客户端行为**:请求转发对客户端透明,客户端并不知道请求被转发了;而重定向则是客户端收到服务器的响应后,自己发起新的请求。 2. **URL显示**:转发后,浏览器地址栏的...

    Servlet转发与重定向

    Servlet 转发与重定向是 Java Servlet 编程中两个重要的概念,它们都可以让浏览器获得另外一个 URL 所指向的资源,但是它们的内部运行机制有着很大的区别。 RequestDispatcher.forward 方法 RequestDispatcher....

    详解spring mvc 请求转发和重定向

    相比之下,请求重定向(Redirecting)则是通过`HttpServletResponse.sendRedirect()`方法完成的。重定向涉及到两次HTTP请求: 1. 服务器向浏览器发送一个响应,指示浏览器发起一个新的HTTP请求到指定的URL。 2. ...

    页面转向与重定向

    页面转向与重定向是 Web 开发中两个非常重要的概念,它们都是用于在不同的 Web 资源之间进行跳转的,但是它们之间有着很大的区别。下面我们将详细介绍转发和重定向的概念、调用方式、工作流程和区别。 一、调用方式...

    JSP重定向技巧

    - `forward`:服务器端重定向,它会清除当前响应的内容,然后将请求转发到另一个内部资源。如果在`forward`之前有大量输出,可能会导致缓冲区满,这时内容会被发送到客户端,`forward`将不再有效。 - `sendRedirect`...

    java解决请求跨域的两种方法

    Java 解决请求跨域的两种方法 Java 解决请求跨域的两种方法是指在 Java Web 开发中解决跨域资源共享(Cross-Origin Resource Sharing,CORS)问题的两种常见方法。跨域资源共享是指一个域名下的资源被另一个域名下...

    详解Java从后台重定向(redirect)到另一个项目的方法

    Java后台重定向到另一个项目的方法详解 Java后台重定向到另一个项目的方法是Java开发中一个常见的问题,本文将详细介绍三种常用的方法,帮助开发者快速解决问题。 方法一:使用ModelAndView跳转 在Spring MVC框架...

    java 中sendredirect()和forward()方法的区别

    Java 中 sendRedirect() 和 forward() 方法的区别 Java 中的 sendRedirect() 和 forward() 方法都是用于页面跳转的,但是它们之间存在着一些关键的区别。 1. 跳转方式 sendRedirect() 方法可以将请求重定向到任何...

    JavaWeb开发技术-实现请求重定向.pptx

    在JavaWeb开发中,实现请求重定向可以使用Servlet的sendRedirect()方法。该方法可以将客户端重定向到新的资源路径,以便客户端重新发送请求。例如,在登录页面中,如果用户输入的用户名密码错误,可以使用...

    forward PK sendredirect

    相比之下,`response.sendRedirect("转的页面")`是Java Servlet API中的一个方法,它会告诉浏览器发送一个新的GET请求到指定的URL。这是一个客户端的跳转,服务器返回一个HTTP状态码302(暂时重定向)和Location头,...

    HttpServletResponse对象的应用

    本篇文章将深入探讨`HttpServletResponse`对象的应用,以及请求重定向与请求转发的区别。 首先,我们来理解`HttpServletResponse`对象。它是服务器端用于构建并发送HTTP响应的接口,它提供了设置响应状态码、添加头...

    Springboot转发重定向实现方式解析

    Springboot 转发重定向是指在 Springboot 框架中,如何实现请求的转发和重定向。下面将详细介绍 Springboot 转发重定向的实现方式。 一、Springboot 转发 在 Springboot 中,转发可以使用两种方式实现:使用 ...

    请求重定向无法访问web-inf下的资源1

    在Java Web开发中,我们经常会遇到“请求重定向无法访问WEB-INF下的资源1”这样的问题。这主要是由于WEB-INF目录的特殊性所引起的。本文将深入解析这个问题的原因,并提供解决方案。 **WEB-INF目录的特性** 在Java ...

    Java中如何使用Response重定向

    Java中如何使用Response重定向 Java中如何使用Response重定向是指在Java Web应用程序中,使用Response对象来实现页面的重定向。重定向是指将用户的请求从一个页面转移到另一个页面的过程。在Java中,可以使用...

    Java Web应用开发 23 课堂案例-使用response实现重定向.docx

    案例学习目标主要关注`sendRedirect()`方法的使用场景及其与`<jsp:forward>`的区别。在实际开发中,选择使用哪种重定向方式取决于具体需求。如果希望保持URL不变,或者需要在服务器端进行一些额外处理,可能会选择`...

    JavaEE通过response实现请求重定向

    在JavaEE应用开发中,请求重定向是一种常见的技术,它允许服务器端在处理完一个请求后,引导客户端去访问另一个URL。这种方式常用于处理多种场景,如用户登录、页面跳转、错误处理等。本篇文章将详细介绍如何通过`...

    深入学习:Java Servlet开发与实例

    5. **转发和重定向**:Servlet中,我们可以使用`RequestDispatcher`的`forward()`方法将请求转发到其他资源,或者使用`sendRedirect()`方法将客户端重定向到新的URL。 6. **JSP(JavaServer Pages)与Servlet的关系...

Global site tag (gtag.js) - Google Analytics