springboot静态资源映射不生效问题

最近有个同事问我,静态资源映射不生效的问题,很正常我想不就是配置下资源路径就可以了吗?类似配置如下代码

java 复制代码
@Configuration
public class CorsConfig implements WebMvcConfigurer {


    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
    
		//一旦自定义配置静态资源路径,那么springboot默认的那四个静态资源路径规则就会失效
        registry.addResourceHandler("/images/**")
                .addResourceLocations("classpath:/static/","classpath:/static/images/","classpath:/static/images/movie/2023/07/08/","classpath:/static/images/cinema/2023/07/03/","classpath:/static/images/user/2023/07/08/")
                .setCachePeriod(100)
                .resourceChain(true)
                .addResolver(new PathResourceResolver());

    }
}

但通过敲击浏览器 127.0.0.1:port/images/1.jpg,却始终给我404。通过查阅资料和查看文件路径结构,发现我忽略了maven 中对于静态资源的打包方式,

我的目录结果

但是最终在项目的target/class目录下 却没有将static目录,那么问题很明显,尽管我配置了静态资源映射规则,但是实际打包的时候,却没有对应将资源文件打包进去!那么如何将文件打包进去呢?那就是maven中的配置

xml 复制代码
    <build>
        <defaultGoal>compile</defaultGoal>
        <!--定义资源路径-->
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>*/**</include>
                </includes>
                <filtering>false</filtering>
            </resource>
        </resources>
    </build>

相关描述在此 maven文档说明

运行boot项目 ,最终在本地的target目录下的生成的路径如下

![(https://i-blog.csdnimg.cn/direct/aa3f6a6a894746c596c715efe03824c3.png)

重启项目 图片能正确访问到了

相关推荐
陌殇殇27 分钟前
002 SpringCloudAlibaba整合 - Feign远程调用、Loadbalancer负载均衡
java·spring cloud·微服务
猎人everest1 小时前
SpringBoot应用开发入门
java·spring boot·后端
山猪打不过家猪3 小时前
ASP.NET Core Clean Architecture
java·数据库·asp.net
AllowM3 小时前
【LeetCode Hot100】除自身以外数组的乘积|左右乘积列表,Java实现!图解+代码,小白也能秒懂!
java·算法·leetcode
不会Hello World的小苗4 小时前
Java——列表(List)
java·python·list
二十七剑5 小时前
jvm中各个参数的理解
java·jvm
东阳马生架构6 小时前
JUC并发—9.并发安全集合四
java·juc并发·并发安全的集合
计算机小白一个7 小时前
蓝桥杯 Java B 组之岛屿数量、二叉树路径和(区分DFS与回溯)
java·数据结构·算法·蓝桥杯
孤雪心殇7 小时前
简单易懂,解析Go语言中的Map
开发语言·数据结构·后端·golang·go
White graces7 小时前
正则表达式效验邮箱格式, 手机号格式, 密码长度
前端·spring boot·spring·正则表达式·java-ee·maven·intellij-idea