在SpringBoot—如何访问静态资源

该文介绍了SpringBoot项目中,静态资源如文本和图片的存放路径,包括classpath:/META-INF/resources,classpath:/public,classpath:/static,classpath:/resources,以及如何通过http://localhost:端口号/资源的方式进行访问。

方式:

在src/main/resources下

1、classpath:/META-INF/resources

2、classpath:/public

3、classpath:/static

4、classpath:/resources

访问方式: http://localhost:端口号/资源

例如:

1、访问文本资源 

 

 2、访问图片资源

 

 

### 解决 Spring Boot 项目中静态资源访问出现 404 的方法 #### 修改 `application.yml` 文件配置 为了确保 `/static` 目录下的静态资源能够被正确加载,可以在项目的 `application.yml` 中添加特定的配置项来放开这些资源的拦截: ```yaml spring: mvc: static-path-pattern: /static/** ``` 此设置允许应用程序识别并处理来自指定目录中的静态文件请求[^2]。 #### 自定义静态资源路径配置类修正 如果通过继承 `WebMvcConfigurationSupport` 来重写默认行为,则需要注意覆盖父类的方法时可能会影响其他功能。对于上述提到的情况,可以通过调整 `addResourceHandlers()` 方法实现更精确地映射静态资源位置而不影响全局配置: ```java @Configuration public class MvcConfig implements WebMvcConfigurer { @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { if (!registry.hasMappingForPattern("/static/**")) { registry.addResourceHandler("/static/**") .addResourceLocations("classpath:/static/"); } } } ``` 这里采用接口 `WebMvcConfigurer` 实现而非直接扩展 `WebMvcConfigurationSupport` 类,从而避免潜在冲突[^3]。 #### 正确设定国际化消息源路径 当涉及到多语言支持或其他基于属性文件的功能时,应仔细检查相关配置项是否指向了正确的文件路径。例如,在配置国际化的基础名称(`basename`)时,应该确保其值对应实际存在的资源包位置: ```properties spring.messages.basename=i18n/login ``` 这一步骤有助于排除因误配而导致的相关问题[^4]。 #### 总结建议 为了避免静态资源返回 404 错误,除了以上措施外还应注意以下几点: - 确认所使用的 URL 是否与服务器端路由规则匹配; - 检查浏览器开发者工具网络面板查看具体哪个环节出现了异常响应; - 查看日志输出寻找任何有关于找不到文件的信息提示; 采取上述策略通常能有效解决问题,并使前端页面正常显示所需的 CSS 和 JavaScript 文件等内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值