关于转发重定向以及包含

一.请求重定向:
    1.原始方式
        response.setStatus(302);
        response.setHeader("Locaton","/xxxxxx");
    2.快捷方式
        response.sendRedirect("/xxxx");
    *3.额外的方式
        response.setHeader("refresh","0;url=/xxxx");
        
        <c:redirect>
二、请求转发
    1.
        ServletContext.getRequestDispatcher().forward();
    2.
        request.getRequestDispatcher().forward();
    3.
        pageContext.forward("");

<jsp:forward>

三、请求包含
    1.
        ServletContext.getRequestDispatcher().include()
    2.
        request.getRequestDispatcher().include()
    3.
        <%@ include file=""%>
    4.
          pageContext.include("/index.jsp");
      5.
          <jsp:include/>
      6.
          <c:import/>

转发与重定向的区别:

1.重定向的执行过程:Web服务器向浏览器发送一个http响应--》浏览器接受此响应后再发送一个新的http请求到服务器--》

      服务器根据此请求寻找资源并发送给浏览器。它可以重定向到任意URL,不能共享request范围内的数据。

2.重定向是在客户端发挥作用,通过新的地址实现页面转向。

3.重定向是通过浏览器重新请求地址,在地址栏中可以显示转向后的地址。

4.转发过程:Web服务器调用内部方法在容器内部完成请求和转发动作--》将目标资源发送给浏览器,它只能在同一个Web应用中

      使用,可以共享request范围内的数据。

5.转发是在服务器端发挥作用,通过forward()方法将提交信息在多个页面间进行传递。

6.转发是在服务器内部控制权的转移,客户端浏览器的地址栏不会显示出转向后的地址。

时间: 2024-10-25 20:18:27

关于转发重定向以及包含的相关文章

Servlet技术-请求转发,重定向和包含的关系

Web组件之间的关系包含3种,请求转发,URL重定向和包含 1.请求转发 请求转发允许把请求转发给同一应用程序的其他web组件,这种技术通常用于Web应用控制层的Servlet流程控制器,可检查HTTP请求的数据,并将请求转发到合适的目标组件,目标组件执行具体的请求处理操作并生成响应结果. 实例: 如果当前的Servlet组件要把请求转发给一个jsp组件,如hello.jsp,可在Servlet中的service方法中执行一下代码: RequestDispatcher rd=request.ge

Java Web中请求转发和请求包含

1.都是在一个请求中跨越多个Servlet 2.多个Servlet在一个请求中,他们共享request对象.就是在AServle中setAttribute()保存数据在BServlet中由getAttribute()取出数据 3.在AServlet转发到BServlet,那么整个请求都是由BServlet来完成,AServlet不再插手 4.AServlet 包含BServlet,那么两个Servlet共同完成请求 5.请求转发和请求包含都需要使用一个对象RequestDispatcher. A

域对象的属性和请求的转发重定向

1 在HttpServlet中有操作属性的方法,在pageContext,request,session,application四个域对象中也有操作属性的方法. <%@ page language="java" import="java.util.*" pageEncoding="gb2312"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//E

JSP总结报告二(域对象,请求转发,重定向)

一. JSP四大域对象介绍 1. pageContext  :  属性的作用范围仅限于当前 JSP 页面. 2. request:  属性的作用范围仅限于同一个请求. 3. session: 属性的作用范围限于一次会话, 浏览器打开直到关闭称之为一次会话(在此期间会话不失效). 4. application (servletContext ): 属性的作用范围限于当前 WEB 应用. 是范围最大的属性作用范围, 只要在一处设置属性, 在其他各处的 JSP 或 Servlet 中都可以获取到. 二

关于Struts2的通配方法、转发重定向

1.通配符 在配置struts.xml文件的时候,需要很多action,这时可以用到通配符找到与之对应的方法和类,当然实际开发中很少用到这种方法 struts.xml: <!--通配方法 *_* 第一个* 是类名 第二个* 方法名--> <action name="*_*" class="cn.struts.action.{1}" method="{2}"> <result name="{2}"

SpringMVC之转发重定向

package com.tz.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class ViewController { @RequestMapping("/view") public String view(){ return "../

请求转发、包含、重定向 getAttribute 和 setAttribute POST和GET编码

 一.请求转发  请求包含  请求重定向 Demo5.java   注意:doPost()方法中别忘写doGet(request, response); public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); response.setCo

请求转发与重定向详解(模拟系统维护中提示的实现)

简介 转发和包含 Servlet对象由Servlet容器创建,并且Servlet对象的service()方法也由容器调用.一个Servlet对象可否直接调用另一个Servlet对象的service()方法呢?答案是否定的,因为一个Servlet对象无法获得另一个Servlet对象的引用. 在旧版的Servlet API中,ServletContext接口中的getServlet(Stringname)方法能根据参数给定的名字返回相应的Servlet对象的引用.从Servlet API2.1开始,

HTTP协议基础与web服务的重定向,跳转以及请求转发

JavaWeb中,HttpServletRequest与HttpServletResponse几乎是处理各种请求与操作必备的参数,与原始的ServletRequest/ServletResponse相比,它们符合HTTP协议,所以首先从http协议入手,回顾一些基本的内容,而后根据协议来总结常用的知识点. 首先来介绍一下dos环境下简单的http发送报文,接收报文的方法.运行输入cmd,打开命令提示符输入telnet 127.0.0.1 8080,回车后会出现一个输入界面,但此时输入的字符都无法