SpringBoot无法访问静态资源文件CSS、Js问题

在做一个关于基于IDEA+SpringBoot+Mave+Thymeleaf的系统实现实验时候遇到了这个问题一直无法解决 后来看到一篇博客终于解决了。

springboot项目在自动生成的时候会有两个文件夹,一个是static,一个是templates,如果我们使用

bash 复制代码
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

来进行页面的跳转,默认情况下我们是将html页面放置在templates的文件夹下,css、js、img放置在static文件夹下。

1、先检查文件存放位置是否正确

2、在放置java文件的目录下创建文件InterceptorConfig.java

springboot在2.+时,我们需要配置一个静态资源映射(非常关键),同时此操作可以进行拦截器的扩展,具体不在这里说明,注意要继承WebMvcConfigurationSupport !

代码如下

java 复制代码
package org.example.demo4;

import org.springframework.boot.SpringBootConfiguration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;

@SpringBootConfiguration
public class InterceptorConfig extends WebMvcConfigurationSupport {


    @Override
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        //        静态资源映射
        registry.addResourceHandler("/").addResourceLocations("/**");
        registry.addResourceHandler("/**").addResourceLocations("classpath:/static/");
    }

}

3、不要在配置文件中配置默认的静态文件路径

有的话删除,application.properties文件大致如下

4、引入CSS的方式

html 复制代码
 <link rel="stylesheet" th:href="@{/rehisterstyle.css}">

不要加/static/前缀

到这这个问题基本就解决了。

相关推荐
野犬寒鸦31 分钟前
Linux常用命令详解(下):打包压缩、文本编辑与查找命令
linux·运维·服务器·数据库·后端·github
huohuopro1 小时前
thinkphp模板文件缺失没有报错/thinkphp无法正常访问控制器
后端·thinkphp
什码情况1 小时前
星际篮球争霸赛/MVP争夺战 - 华为OD机试真题(A卷、Java题解)
java·数据结构·算法·华为od·面试·机试
AA-代码批发V哥1 小时前
正则表达式: 从基础到进阶的语法指南
java·开发语言·javascript·python·正则表达式
字节高级特工1 小时前
【C++】”如虎添翼“:模板初阶
java·c语言·前端·javascript·c++·学习·算法
晴天下小雨o1 小时前
排序算法总结
java·算法·排序算法
曼岛_2 小时前
[Java实战]Spring Boot 整合 Redis(十八)
java·spring boot·redis
向哆哆2 小时前
Netty在Java网络编程中的应用:实现高性能的异步通信
java·网络·php
程序员爱钓鱼2 小时前
循环语句:for、range -《Go语言实战指南》
java·数据结构·算法
wowocpp2 小时前
Java项目层级介绍 java 层级 层次
java