zoukankan      html  css  js  c++  java
  • Servlet的过滤器(Fliter)

    Servlet过滤器与Servlet十分相似,但具有拦截客户端(浏览器)请求的功能,可以改变请求中的内容来满足实际开发的需求。对于开发人员而言,过滤器实质就是在Web应用服务器上的一个Web应用组件,用于拦截客户端与目标资源的请求,并执行一定过滤处理后发送给目标资源。
    
    Filter接口的方法:
    方法声明    说明
    Void init(FilterConfig  filterConfig) throws  ServletException    过滤器的初始化方法,此方法在初始化过滤器时调用
    Void doFilter(ServletRequest  request,ServletResponse  response,FilterChain  chain) throws   IOException,ServletException     对请求进行过滤
    Void destroy()    销毁方法以释放资源
    
    FilterConfig接口方法:
    方法声明    说明
    String  getFilterName()    用于获取过滤名
    ServletContext  getServletContext()    获取过滤器的上下文
    String  getInitParameter(String  name)    获取过滤器的初始化参数值
    Enumeration  getInitParameter()    获取过滤器的所有初始化参数
    
    FilterChain接口方法:
    Public   void  doFilter(SertvletRequest  request,ServletResponse  response) throws  IOException,ServletException
    此方法用于将过滤后的请求传递给下一个过滤器,如果此过滤器是过滤器链中的最后一个过滤器,那么请求将传送给目标资源。
    
    
    
    Web.xml配置文件中配置Filter:
    <!-- 注册过滤器 -->
      <filter>
      <description>注册过滤器MyFilter</description>
      <!-- 过滤器的名称 -->
      <filter-name>MyFilter</filter-name>
      <!-- 过滤器的使用类 -->
      <filter-class>com.wgh.MyFilter</filter-class>
      </filter>
      <!-- 配置过滤器 -->
      <filter-mapping>
      <filter-name>MyFilter</filter-name>
      <!-- 设置过滤器要过滤的页面,如果是指定页面就指定页面 login.jsp -->
      <url-pattern>/MyFilter</url-pattern>
      </filter-mapping>
    
    
    通过注解配置过滤器:
    @WebFilter(filterName="/MyFilter",urlPatterns={"/First.jsp"},
    initParams={@WebInitParam(name="mood",value="KKK")})
    
    filterName:配置过滤器的名称。
    urlPatterns:配置过滤器要过滤的页面。
    initParams:配置初始化参数。
  • 相关阅读:
    Eclipse中配置约束(DTD,XSD)
    Eclipse集成tomcat
    java使用dom4j对XML进行CURD操作
    SQL数据库操作(CURD)
    Java-IO流总结
    Java-集合框架总结
    AES apache commons-crypto 对称加密
    Redis
    Axis2 客户端调用 设置超时时间
    Sybase 修改数据库默认排序
  • 原文地址:https://www.cnblogs.com/gynbk/p/6556304.html
Copyright © 2011-2022 走看看