各位读者,大家好!
spingboot工程中,读取resource下的静态,无论是windows环境,还是将项目以jar的方式发布至Unix下,建议用以下方法获取文件:
比如在resource下有目录imgs,文件为invoiceStamp.png
那么读取方法如下:
1 ClassPathResource classPathResource = new ClassPathResource("imgs/invoiceStamp.png"); 2 InputStream inputStream =classPathResource.getInputStream();
pom.xml文件中需要指定打包的文件资源:
1 <!-- 添加资源 --> 2 <resources> 3 <resource> 4 <directory>src/main/java</directory> 5 <includes> 6 <!--包含文件夹以及子文件夹下所有资源--> 7 <include>**/*.xml</include> 8 </includes> 9 </resource> 10 11 <resource> 12 <directory>src/main/resources</directory> 13 <!-- src/main/resources下的指定资源放行 --> 14 <includes> 15 <include>**/*.properties</include> 16 <include>**/*.yml</include> 17 <include>**/*.xml</include> 18 <include>*.xml</include> 19 <include>*.yml</include> 20 <include>**/*.docx</include> 21 <include>**/*.png</include> 22 </includes> 23 <filtering>false</filtering> 24 </resource> 25 </resources>