在 Spring Boot 项目中,'classpath*:' 和 'classpath:' 都是用来指定类路径下资源文件的前缀。

  1. 'classpath*:':使用 'classpath*:' 前缀将会在所有类路径下搜索匹配的资源文件。这意味着,不仅会在当前项目的类路径下搜索,还会在依赖的 jar 包中的类路径下搜索。这样可以确保能够找到所有匹配的资源文件,无论其在哪个 jar 包中。

  2. 'classpath:':使用 'classpath:' 前缀只会在当前项目的类路径下搜索匹配的资源文件。它不会搜索依赖的 jar 包中的类路径下的资源文件。这样可以避免在某些情况下搜索到重复的资源文件。

所以,区别就在于是否搜索依赖的 jar 包中的类路径下的资源文件。如果你需要搜索所有类路径下的资源文件,使用 'classpath*:' 前缀;如果只需要搜索当前项目的类路径下的资源文件,使用 'classpath:' 前缀。

SpringBoot 项目中 classpath*: 和 classpath: 的区别详解

原文地址: https://www.cveoy.top/t/topic/qnMc 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录