• springboot中filter的用法


     

    一、在spring的应用中我们存在两种过滤的用法,一种是拦截器、另外一种当然是过滤器。我们这里介绍过滤器在springboot的用法,在springmvc中的用法基本上一样,只是配置上面有点区别。

    二、filter功能,它使用户可以改变一个 request和修改一个response. Filter 不是一个servlet,它不能产生一个response,它能够在一个request到达servlet之前预处理request,也可以在离开 servlet时处理response.换种说法,filter其实是一个”servlet chaining”(servlet 链).

    一个Filter包括:
    1)、在servlet被调用之前截获;
    2)、在servlet被调用之前检查servlet request;
    3)、根据需要修改request头和request数据;
    4)、根据需要修改response头和response数据;
    5)、在servlet被调用之后截获.

    三、应用

    复制代码
    @Component
    @ServletComponentScan
    @WebFilter(urlPatterns = "/login/*",filterName = "loginFilter")
    public class LoginFilter implements Filter{
    
        @Override
        public void init(FilterConfig filterConfig) throws ServletException {
    
        }
    
        @Override
        public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
    
        }
    
        @Override
        public void destroy() {
    
        }
    }
    复制代码

    四、解释:

    1、@Component 这个注解的目的是将LoginFilter交给容器来处理。也就是让LoginFilter起作用

    2、@ServletComponentScan 这个使用来扫描@WebFilter 的让@WebFilter起作用。当然对于servlet线管注解也是可以的。这个@ServletComponentScan最好卸载Apllication这个上面,通用配置。我这里因为只有一个Filter所以没有写在Application上面。

    3、@WebFilter 这个用处显而易见,针对于什么链接做过滤,filter的名称是为什么。

    五、简单介绍一下springmvc中的Filter的用法

    1、写的方法还是一样的都是继承Filter,来实现3个方法处理

    2、丢入容器:这个需要配置在web.xml里面

    复制代码
        <filter>
            <filter-name>loginFilter</filter-name>
            <filter-class>com.troy.boot.filter.LoginFilter</filter-class>
        </filter>
        <filter-mapping>
            <filter-name>loginFilter</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
  • 相关阅读:
    如何解决Unsupported major.minor version 52.0问题?
    无法将 Ethernet0 连接到虚拟网络”VMnet0″ 详细信息可以在 vmware.log 文件中找到未能连接虚拟机Ethernet0
    安卓逆向入门教程(一)
    go数据类型 slice map
    Tomcat服务配置及性能优化
    RabbitMQ消息可靠性投递
    LevelDb引擎
    【前端】Vue.js前端框架
    【PHP】PHP 微服务协程框架Swoft
    Supervisor进程管理工具
  • 原文地址:https://www.cnblogs.com/pjsweb/p/10069694.html
Copyright © 2020-2023  润新知