zoukankan      html  css  js  c++  java
  • Java EE javax.servlet中的RequestDispatcher接口

    RequestDispatcher接口

      public interface RequestDispatcher

     

      一、介绍

      定义一个对象,从客户端接收请求并将其发送到服务器上的任何资源(例如servlet,HTML文件或JSP文件)。

      servlet容器创建RequestDispatcher对象,该对象用作位于特定路径或特定名称的服务器资源的包装。

      此接口旨在包装servlet,但servlet容器可以创建RequestDispatcher对象以包装任何类型的资源

      获取此对象的方法:

    • ServletContext.getRequestDispatcher(java.lang.String)
    • ServletContext.getNamedDispatcher(java.lang.String)
    • ServletRequest.getRequestDispatcher(java.lang.String)

     

      二、属性

      好多属性,关于URI,关于path

     

      三、方法

      1、void forward(ServletRequest request,ServletResponse response) throws ServletException, IOException

      将来自servlet的请求转发到服务器上的另一个资源(servlet,JSP文件或HTML文件)。此方法允许一个servlet对请求和另一个资源进行初步处理以生成响应。

      对于通过getRequestDispatcher()获取的RequestDispatcher,ServletRequest对象将其路径元素和参数调整为匹配目标资源的路径。

      forward()应在响应提交给客户端之前调用(在响应正文输出刷新之前)。如果响应已被提交,则此方法将引发IllegalStateException。在转发之前,响应缓冲区中未提交的输出会自动清除。

      请求和响应参数必须与传递给调用Servlet的service方法的对象相同,或者是包装它们的ServletRequestWrapper或ServletResponseWrapper类的子类。

      此方法将给定请求的调度程序类型设置为DispatcherType.FORWARD。

     

      2、void include(ServletRequest request, ServletResponse response) throws ServletException, IOException

      在响应中包含资源 (servlet、JSP 页、HTML 文件) 的内容。实质上, 此方法启用编程服务器端包含。

      ServletResponse 对象的路径元素和参数与调用者。包含的 servlet 不能更改响应状态代码或设置标头; 否则为任何进行更改的尝试都将被忽略。

      请求和响应参数必须与传递给调用 servlet 的服务方法的对象相同, 或者是包装它们的 ServletRequestWrapper 或 ServletResponseWrapper 类的子类别。

      此方法将给定request的调度器类型设置为 DispatcherType. INCLUDE。

     

     

     

  • 相关阅读:
    输入'过程'求方差算法的简单优化(免去数组的使用)
    PAT 甲级 1002 A+B for Polynomials
    常见算法时间函数的增长趋势分析
    洛谷 P4888 三去矩阵
    PAT 甲级 1001 A+B Format
    网站云服务器迁移时遇到的坑
    Angular JS中自定义标签 属性绑定的解释
    how to do a mass update in Laravel5 ( 在Laravel 5里面怎么做大量数据更新 )
    javascript 到将来某个时间(2020-5-20)的倒计时
    javascript 数字日期格式转换为中文
  • 原文地址:https://www.cnblogs.com/bigbigbigo/p/8843509.html
Copyright © 2011-2022 走看看