在springboot工程中,resource/template目录下有一个模板文件,需要通过接口下载
正常情况下会通过文件的路径获取字节输入流,将文件中的数据读取到java程序中。
String filePaht =this.getClass().getResource("/template/userImport.xlsx").getPath();
InputStream bis=new BufferedInputStream(new FileInputStream((new File(filePaht))))
但是当把工程打成jar包部署到服务器以后,在确认文件已经被打入jar包中的情况下会抛出FileNotFindException异常。
修改读取方式,问题解决
Resource resource = new ClassPathResource("template/userImport.xlsx");
InputStream bis = new BufferedInputStream(resource.getInputStream());
注意:jar包中的资源文件无法以file路径的方式读取,需要用stream的方式读取。