Servlet 编写过滤器.pdfVIP

  • 5
  • 0
  • 约8.44千字
  • 约 7页
  • 2017-05-29 发布于湖北
  • 举报
Servlet 编写过滤器

Servlet 编写过滤器 Servlet 编写过滤器 Servlet 过滤器是可⽤于 Servlet 编程的 Java 类,有以下⽬的: 在客户端的请求访问后端资源之前,拦 这些请求。 在服务器的响应发送回客户端之前,处理这些响应。 根据规范建议的各种类型的过滤器: ⾝份验证过滤器 (Authentication Filters )。 数据压缩过滤器 (Data compression Filters )。 加密过滤器 (Encryption Filters )。 触发资源访问事件过滤器。 图像转换过滤器 (Image Conversion Filters )。 ⽇志记录和审核过滤器 (Logging and Auditing Filters )。 MIME-T PE 链过滤器 (MIME-T PE Chain Filters )。 标记化过滤器 (Tokenizing Filters )。 XSL/T 过滤器 (XSL/T Filters ),转换 XML 内容。 过滤器被部署在部署描述符⽂件 web.xml 中,然后映射到您的应⽤程序的部署描述符 中的 Servlet 名称或 URL 模式。 当 Web 容器启动 Web 应⽤程序时,它会为您在部署描述符中声明的每⼀个过滤器创 建⼀个实例。该过滤器执⾏的顺序是按它们在部署描述符中声明的顺序。 Servlet 过滤器⽅法 过滤器是⼀个实现了 j avax .servlet .Filter 接⼜的 Java 类。j avax .servlet .Filter 接⼜定义了 三个⽅法: 序 ⽅法 描述 号 public void doFilter (ServletRequest, ServletResponse, FilterChain) 1 该⽅法在每次⼀个请求/ 响应对因客户端在链的末端请求资源⽽通过链传递时由 容器调⽤。 2 public void init(FilterConfi filterConfi ) 该⽅法由 Web 容器调⽤,指⽰⼀个过滤器被放⼊服务。 3 public void destroy() 该⽅法由 Web 容器调⽤,指⽰⼀个过滤器被取出服务。 FilterConfi 使⽤ Filter 的 init ⽅法中提供了⼀个 FilterConfig 对象。 如 web .xml ⽂件配置如下: filter filter-nameLoginFilter/filter-name filter-classcom.w3cschool.test.LogFilter/filter-class init-param param-nameSite/param-name param-valuew3cschool在线教程/param-value /init-param /filter 在 init ⽅法使⽤ FilterConfig 对象获取参数: public void init(Filter onfig config) throws ServletException { // 获取初始化参数 String site = config.getInitParameter(Site); // 输出初始化参数 System.out.println(⽹站名称: + site); } Servlet 过滤器实例 以下是 Servlet 过滤器的实例,将输出客户端的 IP 地址和当前的⽇期时间。本实例让 您对 Servlet 过滤器有基本的了解,您可以使⽤相同的概念编写更复杂的过滤器应⽤程 序: // 导⼊必需的 java 库 import java.io.*; import javax .servlet.*; import javax .servlet.http.*; import java.util.*; // 实现 Filter 类 public c

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档