国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

jsp filter 過濾器功能與簡單用法示例

瀏覽:171日期:2022-06-07 14:02:07

本文實例講述了jsp filter 過濾器功能與簡單用法。分享給大家供大家參考,具體如下:

過濾器的作用是什么?

過濾器可以動態地攔截請求和響應,以變換或使用包含在請求或響應中的信息。

可以將一個或多個過濾器附加到一個 Servlet 或一組 Servlet。過濾器也可以附加到 JavaServer Pages (JSP) 文件和 HTML 頁面。

  • 在客戶端的請求訪問后端資源之前,攔截這些請求。
  • 在服務器的響應發送回客戶端之前,處理這些響應。

過濾器的實現要實現 java.servlet.Filter 這個接口類

一個簡易的filter 類示例

package demo;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class DemoFilter implements Filter
{
  private String name=null;
  @Override
  public void destroy()
  {
  }
  @Override
  public void doFilter(ServletRequest arg0, ServletResponse arg1,
      FilterChain arg2) throws IOException, ServletException
  {
    arg0.setAttribute("name", "init text string : " + name);
    arg2.doFilter(arg0, arg1);
  }
  @Override
  public void init(FilterConfig arg0) throws ServletException
  {
    //獲得web.xml中filter init-param 中的配置
    name = arg0.getInitParameter("name");
  }
}

僅僅只是寫好了這個過濾器類還不行。我們要在web.xml中聲明哪些請求需要過濾器的調用

web.xml

  <!--聲明一個filter-->
  <filter>
  <!--filter的名稱-->
    <filter-name>demoFilter</filter-name>
  <!--filter 類-->
    <filter-class>demo.DemoFilter</filter-class>
  <!--該filter類需要的配置-->
    <init-param>
      <param-name>name</param-name>
      <param-value>my name is tanyong</param-value>
    </init-param>
  </filter>

  <!--為url-pattern 中相匹配的url鏈接 映射至相應的filter filter 通過 filter-name來識別-->
  <filter-mapping>
    <filter-name>demoFilter</filter-name>
    <!--匹配映射規則,我這里用的是所有請求都要在demoFilter filter 里面去兜晃一圈-->
    <url-pattern>/*</url-pattern>
  </filter-mapping>

希望本文所述對大家jsp程序設計有所幫助。

標簽: JSP
相關文章:
主站蜘蛛池模板: 娱乐| 阜新市| 长岛县| 海南省| 盐源县| 安化县| 图们市| 永年县| 高陵县| 聂荣县| 郸城县| 同江市| 抚松县| 彩票| 青田县| 临城县| 嘉义县| 防城港市| 洱源县| 扬州市| 贵德县| 新野县| 台北市| 多伦县| 美姑县| 临城县| 宁河县| 化隆| 伊金霍洛旗| 永州市| 巩义市| 渑池县| 安义县| 胶州市| 鞍山市| 离岛区| 赣州市| 吉水县| 皮山县| 龙泉市| 罗甸县|