springboot在class中获取resources中的静态资源
Can't read input file!
在一个springboot项目中,我直接在File中写入了 /static/images/hello.png 相对路径,然后就爆红了,找不到文件。
随后我直接在File中写了/tmp.txt,然后创建出这个文件,发现tmp.txt直接被创建到了F盘的根目录下,也就是说在项目中并没有定位resource目录为静态资源根目录。
思路:
既然他没有将项目目录定位为根目录,那么就首先定位到项目目录,然后再去寻找静态资源。
解决方法:
直接在方法里使用这个可以定位到静态资源,但是在我将项目部署到服务器上之后,便又是爆红,找不到文件!
1 this.getClass().getResource("/static/images/background.png").getPath();
所以我有采用了下面这种方式,可以在windows系统以及linux系统都正常运行。
1 InputStream inputStream = this.getClass().getResourceAsStream("/static/images/background.png");
这是我的解决方案,如果大家有其他方法欢迎在下方评论区留言讨论!
分类:
java
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能