springboot打jar包启动后,读取jar包中文件采坑
程序员文章站
2022-03-02 21:00:07
...
问题记录:
做excel文件导出时,逻辑如下:
1、读取模板配置文件
2、根据模板文件生成新的excel
在做第一步时,本地和服务器上的读取是不一样的,服务器上是jar包启动,本地是开发工具IDEA的main启动,代码如下:
具体可参考【com.xxx.CiticStatisticBiz#exportStatisticBorrowResult】
1、非jar包启动读取模板文件(从绝对路径读取Excel模板)
File path = new File(ResourceUtils.getURL("classpath:").getPath());
logger.info("classpath绝对路径:{}", path.getAbsolutePath());
String excelTemPath = path.getAbsolutePath() + File.separator + "excel" + File.separator;
logger.info("excel模板绝对路径:{}", excelTemPath + excelTemplate);
File file = new File(excelTemPath + excelTemplate);
File newFileDir = new File(exportFilePath);
FileUtils.copyFileToDirectory(file, newFileDir);
2、jar包启动读取模板文件(从相对路径读取Excel模板)
//方法一
InputStream in1 = getClass().getClassLoader().getResourceAsStream(sourcePath);
logger.info("文件流是否为null:{}", null == in1);
//方法二(最终使用)
ClassPathResource resource = new ClassPathResource(sourcePath);
InputStream in = resource.getInputStream();
推荐阅读
-
springboot 打jar 包部署时 读取外部配置文件
-
springboot 打jar 包部署时 读取外部配置文件
-
【解决方案】springboot 打jar包后启动,resource下配置文件找不到
-
Springboot打jar包无法读取resource下文件
-
java读取文件程序打jar包后出现乱码
-
springboot 打包问题--clean之后install打包,配置文件打不到jar包中
-
SpringBoot项目打成jar包后resource下文件的读取
-
springboot 项目打成 jar 包后找不到 ResourceUtils.getFile 读取的文件
-
SpringBoot项目打成jar包后无法读取到resource下的文件
-
SpringBoot项目打成jar包后,无法读取resources下的文件