关于Spring boot2.0+配置拦截器拦截静态资源的问题

第一次遇到这个问题的时候,简直是一脸蒙逼,写了一个拦截器以后,静态资源就不能访问了,到处查找才知道是版本问题

解决办法:
第一步:定义一个类实现

实现WebMvcConfigurer的类中拦截器中添加放行资源处添加静态资源文件路径:

@Override
public void addInterceptors(InterceptorRegistry registry) {
registry.addInterceptor(sessionInterceptor).addPathPatterns("/").excludePathPatterns("/static/");
}
第二步:
配置静态文件路径
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");
WebMvcConfigurer.super.addResourceHandlers(registry);
}

下面是我自己修改的部分

第三步:
在页面访问静态资源时,需要这样写:需要把路径改成"/static/css/loaders.css"

原文地址:https://www.cnblogs.com/small-woods/p/11387366.html

时间: 2024-12-19 10:00:28

关于Spring boot2.0+配置拦截器拦截静态资源的问题的相关文章

27.Spring-Boot中拦截器中静态资源的处理(踩过坑)以及Spring mvc configuring拓展介绍

一.springboot中对静态资源的处理 默认情况下,springboot提供存放放置静态资源的文件夹: /static /public /resources /META-INF/resources 对于maven项目即就是存在src/main/resources 文件夹下. ? 如图:static文件夹就是springboot中默认的文件夹 在页面中这样写路径<link href="themes/bootstrap.min.css" rel="stylesheet&

spring拦截器排除 静态资源

拦截器需要排除静态资源,不然会造成资源浪费 <!-- 拦截器 --> <mvc:interceptors> <!-- 使用bean定义一个Interceptor,直接定义在mvc:interceptors根下面的Interceptor将拦截所有的请求 --> <mvc:interceptor> <mvc:mapping path="/**"/> <mvc:exclude-mapping path="/resou

spring 拦截器拦截点的配置

实用正则org.springframework.aop.support.RegexpMethodPointcutAdvisor 然后 <property name="advice"> <ref local="methodCacheInterceptor"/> </property> <property name="patterns"> <list> <value>.*_cac

Spring Boot2.0自定义配置文件使用

声明: spring boot 1.5 以后,ConfigurationProperties取消locations属性,因此采用PropertySource注解配合使用 根据Spring Boot2.0官方文档,PropertySource注解,只支持properties文件,因此排除 YAML配置 针对二,可考虑新建配置类,自行搜索,不再此次讨论范围 具体使用: 1.根目录下新建自定义配置文件夹与properties配置文件 example.name=tom example.wife=jerr

Spring Boot2.0之 监控管理

Spring boot监控中心: 针对微服务的服务状态,服务器的内存变化(内存.线程.日志管理等)检测服务配置连接地址是否有用(有些懒加载的情况下,用的时候发现卧槽不能用)模拟访问,懒加载.统计有多少个bean(Spring 容器中的bean).统计Spring MVC 中@RequestMapping(统计接口数) Actuator监控应用(无界面,返回json格式) AdminUi底层使用Actuator监控应用,实现可视化界面 Actuator是spring boot的一个附加功能,可帮助

nginx配置从远程获取静态资源

前置条件:现有两台内网互通机器192.168.0.100.192.168.0.101,其中192.168.0.100可以通过外网网络.业务需求:需要通过外网访问处于192.168.0.101机器上的静态资源. 192.168.0.100nginx配置: location /upload { alias /data/image/upload; try_files $uri @new_server; } location @new_server { proxy_redirect off; proxy

在JSP中常见问题,防止SpringMVC拦截器拦截js等静态资源文件的解决方案

方案一.拦截器中增加针对静态资源不进行过滤(涉及spring-mvc.xml) <mvc:resources location="/" mapping="/**/*.js"/> <mvc:resources location="/" mapping="/**/*.css"/> <mvc:resources location="/assets/" mapping="/a

Spring Boot2.0之注解方式启动Springmvc

回顾下springmvc原理图: DispatcherServlet是Spring MVC的核心,每当应用接受一个HTTP请求,由DispatcherServlet负责将请求分发给应用的其他组件. 在旧版本中,DispatcherServlet之类的servlet一般在web.xml文件中配置,该文件一般会打包进最后的war包种:但是Spring 3引入了注解,我将要介绍,如何基于注解配置Spring MVC. 1.Spring mvc无配置文件夹,采用注解方式启动. 把配置的内容 转换为 Ja

用程序拦截器拦截请求

Servlet API可以在每个Web请求得到servlet处理的前后,进行预处理和后处理. 有时候希望预先和事后处理Spring MVC处理的请求,在方法返回的模式属性传递视图之前操纵它们. (这两种有什么不同呢) Spring MVC允许使用程序拦截器(Handler inteceptors)拦截Web请求进行预先和事后处理. 可以为特定的URL映射注册处理程序拦截器,这样就只拦截映射到某些URL的请求. 每个拦截器都要实现HandlerInterceptor接口,有三个回调方法供实现. p