2013年3月23日星期六

Servlet过滤器的使用

1.什么是Servlet过滤器?
     我们日常生活中的水物质 过滤器是采用不同滤料对水进行过滤,到达去除水中部分杂质的一种设备。而web服务中的Servlet过滤器的功能和水物质过滤器的功能类似。servlet过滤器的作用就是根据过滤 条件对HTTP请求进行过滤.
2.Servlet过滤器的功能
  • 网站内容访问权限过滤
  • 网站信息发布、修改,屏蔽非法字符
  • 对请求内容进行 统一编码
3.编码
Java代码  收藏代码
  1. package com.tao.common.power.filter;  
  2.   
  3. import java.io.IOException;  
  4.   
  5. import javax.servlet.Filter;  
  6. import javax.servlet.FilterChain;  
  7. import javax.servlet.FilterConfig;  
  8. import javax.servlet.ServletException;  
  9. import javax.servlet.ServletRequest;  
  10. import javax.servlet.ServletResponse;  
  11. import javax.servlet.http.HttpServletRequest;  
  12.   
  13. public class PowerFilter implements Filter {  
  14.   
  15.     public void init(FilterConfig filterConfig) throws ServletException {  
  16.           
  17.     }  
  18.   
  19.     public void doFilter(ServletRequest request, ServletResponse response,  
  20.             FilterChain chain) throws IOException, ServletException {  
  21.         boolean flag = true;  
  22.         HttpServletRequest req = (HttpServletRequest) request;  
  23.         System.out.println(req.getRequestURI());  
  24.         if (flag) {  
  25.             chain.doFilter(request, response);  
  26.         } else {  
  27.             request.getRequestDispatcher("/error/power.jsp").forward(request, response);  
  28.         }  
  29.     }  
  30.   
  31.     public void destroy() {  
  32.   
  33.     }  
  34.   
  35. }  
 4.配置
Xml代码  收藏代码
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"  
  3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.     xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
  5.     http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  
  6.   
  7.     <!-- 权限控制  -->  
  8.     <filter>  
  9.         <filter-name>power</filter-name>  
  10.         <filter-class>com.tao.common.power.filter.PowerFilter</filter-class>  
  11.     </filter>  
  12.     <filter-mapping>  
  13.         <filter-name>power</filter-name>  
  14.         <url-pattern>/*</url-pattern>  
  15.     </filter-mapping>  
  16. </web-app>  
 
分享到:

没有评论:

发表评论