zoukankan      html  css  js  c++  java
  • springboot-添加过滤器

    过滤器一次,顾名思义,过滤一些东西等等。那么怎么实现呢,具体代码如下

    首先肯定需要建一个filter的包,创建一个过滤类实现filter接口,用来过滤

    package com.gateway.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.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.springframework.stereotype.Component;
    
    @Component
    public class UserFilter implements Filter {
    
        @Override
        public void init(FilterConfig filterConfig) throws ServletException {
            // TODO Auto-generated method stub
            
        }
    
        @Override
        public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain chain)
                throws IOException, ServletException {
                HttpServletRequest request=(HttpServletRequest) servletRequest;
            
                HttpServletResponse response=(HttpServletResponse) servletResponse;
                
                System.out.println("过滤器实现");
                
                chain.doFilter(request, response);
        }
    
        @Override
        public void destroy() {
            // TODO Auto-generated method stub
            
        }
    
    }

    然后在启动类中将该过滤类加载进去

    @Bean
         public FilterRegistrationBean filterRegistrationBean(){
            
            FilterRegistrationBean  filterRegistrationBean=new FilterRegistrationBean();
            
            List<String>urlPatterns=new ArrayList<String>();
            
            filterRegistrationBean.setFilter(new UserFilter());
            
            urlPatterns.add("/user/touser");
            
            filterRegistrationBean.setUrlPatterns(urlPatterns);
            return filterRegistrationBean;
        }

    由上可知,我们过滤的路径是/user/touser,那么过滤器和拦截器先进谁呢,debug测试即可得知,当路径/user/touser过来,先进入过滤器完成之后在进入拦截器,最后执行 完成之后进入controller

  • 相关阅读:
    Mysql 源码安装
    mysql的主从复制
    Centos7通过glib方式安装mysql
    Host is not allowed to connect to this MySQL server解决方法
    MobaXterm记录日志
    Linux的录屏
    ShardingJdbc垂直分库及公共表
    应用系统间几种数据传输方式
    关于加班
    对函数式编程的简单理解
  • 原文地址:https://www.cnblogs.com/1a2b/p/9024457.html
Copyright © 2011-2022 走看看