springboot中使用filter、intercepter、aspect对请求进行拦截

简单来说,filter作用于servlet层,intercepter作用域controller层,aspect根据具体织入的方法作用于method层,如下图所示。

具体三者的区别在原博文https://www.cnblogs.com/bingshu/p/7819932.html已经详细介绍了。

 

需要注意的是,在第三种aspect织入拦截的实现中,需要引入如下依赖:

        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>1.9.1</version>
        </dependency>

        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>1.9.1</version>
        </dependency>        

其中,关于aop相关的主要引入了支持切面编程的依赖:org.aspectj.aspectjweaverorg.aspectj.aspectjrt的依赖。aspectjweaver是aspectj的织入包,aspectjrt是aspectj的运行时包,缺一不可。

posted @ 2021-11-12 11:28  MasterWuGUI  阅读(398)  评论(0)    收藏  举报