springboot项目使用拦截器实现Filter解接口,在类上同时使用@WebFilter@Component注解,导致urlPatterns指定的拦截路径无法生效,出现拦截所有接口情况。

解决方案:
在类上去掉@Component注解,在启动类添加@ServletComponentScan注解。

//@Component 加上这个会导致下面urlPatterns失效 改为启动类添加@ServletComponentScan注解
@WebFilter(filterName = "dataFilter", urlPatterns = "/api/*")
@Order(Integer.MAX_VALUE)
@Slf4j
public class DataFilter implements Filter {@Overridepublic void init(FilterConfig filterConfig) {log.info("------------------Initializing dataFilter");}@Overridepublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {chain.doFilter(request, response);}@Overridepublic void destroy() {log.info("------------------Destroy dataFilter");}}

启动类

@ServletComponentScan
@SpringBootApplication
public class Application {public static void main(String[] args) {SpringApplication.run(VideoScreenApplication.class, args);}}

@ServletComponentScan作用

SpringBootApplication 上使用@ServletComponentScan 注解后
Servlet可以直接通过@WebServlet注解自动注册
Filter可以直接通过@WebFilter注解自动注册
Listener可以直接通过@WebListener 注解自动注册

使用@WebFilter指定urlPatterns失效问题相关推荐

  1. 使用@WebFilter指定urlPatterns失效问题排查

    springboot项目使用过滤器实现Filter接口,在类上同时使用@WebFilter与@Component注解,导致urlPatterns指定的拦截路径无法生效,出现拦截所有接口情况. 解决方案 ...

  2. ief12执行一次js才有效_IE浏览器打开页面js失效 开启F12后刷新正常

    这个问题啊.. 苦恼多时 常规解决法: 更新:meta放在link和script之前,jsp的话要把 放到head下 meta后面 排查了 下,主要是文档模式作怪,此处由上到下,改为默认打开页面为ie ...

  3. @WebFilter在SpringBoot无效的原因分析和解决

    问题描述: 使用Ruoyi的demo部署成功后,发现js.css等静态文件都进入了过滤器,修改application.yml: xss: # 过滤开关enabled: true# 排除链接(多个用逗号 ...

  4. 华为实现中:STP链路或端口失效后网络重新收敛所需时间

    STP中某链路断开或端口失效后的网络收敛时间=角色变化时间+转发延迟时间 如图所示:三台交换机的桥优先级SW1<SW2<SW3,且端口角色如图,d代表指定端口,r代表根端口,B代表阻塞端口 ...

  5. 【Web】javaEE课程复习笔记

    JavaEE复习笔记 根据上课的笔记整理与补充.涵盖web应用开发基础,jsp,标签,注解,struts,spring, mvc, 数据访问等内容 (因为转于个人blog,csdn图片无法显示,可至下 ...

  6. 个人前后端学习笔记(比较杂乱,当做个人备份)

    个人随手笔记..比较乱,没有目录. 单例模式: 某个类只能有一个实例 必须自行创建实例 必须自行向整个系统提供这个实例 实现: 只提供私有的构造方法 含有一个该类的静态私有对象 提供一个静态的共有方法 ...

  7. Spring Boot实战:拦截器与过滤器

    一.拦截器与过滤器 在讲Spring boot之前,我们先了解一下过滤器和拦截器.这两者在功能方面很类似,但是在具体技术实现方面,差距还是比较大的.在分析两者的区别之前,我们先理解一下AOP的概念,A ...

  8. springboot过滤字段_SpringBoot自定义过滤器的两种方式及过滤器执行顺序

    第一种 @WebFilter + @ServletComponentScan 注解 1.首先自定义过滤器 如下自定义过滤器 ReqResFilter必须实现  javax.servlet.Filter ...

  9. JSP/Servlet基础语法

    相关学习资料 http://my.oschina.net/chape/blog/170247 http://docs.oracle.com/cd/E13222_01/wls/docs81/webapp ...

最新文章

  1. Java Day01-1
  2. 题目:[NOIP2008]笨小猴
  3. [模拟退火]BZOJ 3680 吊打XXX
  4. 并发和Read-copy update(RCU)
  5. python找出只出现一次的数字_Python数组中只出现一次的数字
  6. 【android】环形进度条实现
  7. Mac MongoDB未正常关闭导致重启失败
  8. MySQL普通索引与唯一索引__mysql中唯一索引和普通索引的用途及区别
  9. git 命令commit_Git Commit命令解释
  10. HTTP协议头部与Keep-Alive模式详解-Content-Length Transfer-Encoding
  11. Android之十七 进度条和Hanlder
  12. java中long如何使用_在Java中如何使用lambda和方法引用实现LongSupplier?
  13. java application程序_如何Java编写的application程序像exe一样方便shy;的运行
  14. 8. 工厂设计模式(factory pattern)
  15. 为什么安装了增强功能,VirtualBox菜单自动调整显示尺寸还是灰色,不能用
  16. java+mysql实现图书管理系统
  17. 台式计算机如何连接投影仪,台式机怎么接投影仪 台式机接投影仪方法【详解】...
  18. SQL分组排序和排序函数(rank、dense_rank、row_number)
  19. android密码设成星号,如何将密码字段更改为星号而不是点
  20. confirm的意思中文翻译_confirmation是什么意思中文翻译

热门文章

  1. 【Arduino实验02 LED流水灯】
  2. “AliOS之父”——阿里巴巴王坚博士
  3. Paragon NTFS15是什么?Mac外置硬盘读写必备工具
  4. python zip()和zip(*)方法
  5. 20P77 pr预设模板1000多个冲击缩放干扰破损摄像机平移扭曲炫光无缝转场
  6. 派森python教程_从零开始的Python爬虫速成指南
  7. SDDC的Windows初体验-QT篇
  8. [Android]在App中使用相机
  9. MySQL 8 小时断开连接问题解决
  10. CNN网络模型的发展概述