【实例】1在Http过滤器

来源:互联网 发布:linux服务器运维 编辑:程序博客网 时间:2024/06/04 01:36

Filter过滤器的作用:

  1. HttpServletRequest到达Servlet之前,拦截客户的HttpServletReques
  2. 根据需要检查的HttpServletRequest,也可以修改HttpServletRequest头和数据
  3. 在HttpServletResponse到达客户端之前,链接HttpServletResponse
  4. 根据需要检查的HttpServletResponese,也可以修改HttpServletRespone头和数据
LoginFilter.java
package filter;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;import javax.servlet.annotation.WebFilter;import javax.servlet.annotation.WebInitParam;import javax.servlet.http.HttpServletRequest;/** * Servlet Filter implementation class LoginFilter */@WebFilter(urlPatterns={"/*"})public class LoginFilter implements Filter {private FilterConfig config;    /**     * Default constructor.      */    public LoginFilter() {        // TODO Auto-generated constructor stub    }/** * @see Filter#destroy() */public void destroy() {// TODO Auto-generated method stub}/** * @see Filter#doFilter(ServletRequest, ServletResponse, FilterChain) */public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {// TODO Auto-generated method stub// place your code hereSystem.out.println("这里是Filter");chain.doFilter(request, response);}/** * @see Filter#init(FilterConfig) */public void init(FilterConfig fConfig) throws ServletException {// TODO Auto-generated method stubthis.config = fConfig;}}
这段代码最主要的地方是doFilter方法中的内容
在启动服务器的时候就会运行它,因为我的urlPatterns设置成*,所有action都会被这个过滤器过滤
如右图,当我们从WebContent下的index.jsp访问servlet.LoginServlet.java的时候就会经过LoginFilter.java

0 0
原创粉丝点击