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/前缀

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

相关推荐
M-Robots echo5 小时前
轻量化裁剪方案解析:M-Robots 模块化构建,适配高低端各类机器人硬件平台
java·机器人·ros·开源社区·atomgit·m-robots
笃行3505 小时前
SQLServer数据迁移之后,那张报表还能不能秒出
后端
不可求~6 小时前
多模型路由怎么落地:把任务分流写进项目的最小实现
java·前端·数据库
LucianaiB6 小时前
别再被 AI 骗了:我把腾讯云 4 个 Skill 做成了个「AI 打假侦探」,过程的一个小配置坑惨了我
后端
mldong6 小时前
用 DDD 设计工作流引擎:聚合根与充血模型
java·架构
candyTong7 小时前
Claude Code 如何恢复一段会话
后端·架构·ai编程
mqiqe7 小时前
AgentScope Java Harness:4. 双层记忆系统 让 Agent 拥有真正的“长期大脑“
java·开发语言
伍一517 小时前
03-文件管理模块-一个看似简单的模块藏着多少细节
java·ruoyi·若依
gugucoding7 小时前
46. 【Java】JUC并发工具:让并发更简单
java·开发语言
En^_^Joy7 小时前
Django项目配置全攻略:settings配置文件
后端·python·django