java 获取war中的文件,SpringBoot如何读取war包jar包和Resource资源

本文介绍了SpringBoot在打包后如何读取war包、jar包和Resource资源,包括通过getResourceAsStream()获取流以及ClassLoader.getResource()的使用注意事项,解决了Linux环境下无法直接访问war包内文件的问题。
摘要由CSDN通过智能技术生成

这篇文章主要介绍了SpringBoot如何读取war包jar包和Resource资源,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

场景描述

在开发过程中我们经常会碰到要在代码中获取资源文件的情况,而我在最近在SpringBoot项目中时碰到一个问题,就是在本地运行时,获取本地的xml资源文件是能够获取到的,但是项目打成war包jar包启动运行时,就会发生问题,报找不到资源文件的错误。然后经过寻找排查确定了是下面代码通过ClassLoader获取路径的时候出错了。

常用方式:

/**

* @author mazhq

* @Title: TestMain

* @ProjectName: zeus

* @Description: TODO

* @date 2019/3/5 16:10

*/

public class TestMain {

public static void main(String[] args) {

String path = TestMain.class.getClassLoader().getResource("1.xml").getPath();

System.out.println(path);

}

/**

* 输出:

*

*/D:/demo_projects/sc-architecture/service-hi/target/classes/1.xml

*/

}

但是在将SpringBoot打包放到Linux服务器启

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值