springboot读取jar包资源文件文件

先修改pom.xml文件.使打包后的jar包含你的资源文件

pom.xml文件下的build选项中的src/main/resources的目录下 添加配置

<span style="color:#000000"><span style="color:#61687c"><span style="background-color:#ffffff"><code class="language-xml"><<span style="color:#63a35c">build</span>>
        <<span style="color:#63a35c">plugins</span>>
            <<span style="color:#63a35c">plugin</span>>
                <<span style="color:#63a35c">groupId</span>>org.springframework.boot</<span style="color:#63a35c">groupId</span>>
                <<span style="color:#63a35c">artifactId</span>>spring-boot-maven-plugin</<span style="color:#63a35c">artifactId</span>>
            </<span style="color:#63a35c">plugin</span>>
        </<span style="color:#63a35c">plugins</span>>
        <<span style="color:#63a35c">resources</span>>
            <<span style="color:#63a35c">resource</span>>
                <<span style="color:#63a35c">directory</span>>src/main/java</<span style="color:#63a35c">directory</span>>
                <<span style="color:#63a35c">includes</span>>
                    <<span style="color:#63a35c">include</span>>**/*.properties</<span style="color:#63a35c">include</span>>
                    <<span style="color:#63a35c">include</span>>**/*.xml</<span style="color:#63a35c">include</span>>
                </<span style="color:#63a35c">includes</span>>
                <<span style="color:#63a35c">filtering</span>>false</<span style="color:#63a35c">filtering</span>>
            </<span style="color:#63a35c">resource</span>>
            <<span style="color:#63a35c">resource</span>>
                <<span style="color:#63a35c">directory</span>>src/main/resources</<span style="color:#63a35c">directory</span>>
                <<span style="color:#63a35c">includes</span>>
                    <<span style="color:#63a35c">include</span>>**/*.properties</<span style="color:#63a35c">include</span>>
                    <<span style="color:#63a35c">include</span>>**/*.xml</<span style="color:#63a35c">include</span>>
                    <<span style="color:#63a35c">include</span>>**/*.css</<span style="color:#63a35c">include</span>>
                    <<span style="color:#63a35c">include</span>>**/*.js</<span style="color:#63a35c">include</span>>
                    <<span style="color:#63a35c">include</span>>**/*.html</<span style="color:#63a35c">include</span>></code><code class="language-xml"><span style="background-color:#2b2b2b"><span style="color:#e8bf6a"><include></span></span><span style="background-color:#2b2b2b"><span style="color:#a9b7c6">template/*.xlsx</span></span><span style="background-color:#2b2b2b"><span style="color:#e8bf6a"></include></span></span></code><code class="language-xml">                </<span style="color:#63a35c">includes</span>></code><code class="language-xml"> <<span style="color:#63a35c">filtering</span>>false</<span style="color:#63a35c">filtering</span>> </<span style="color:#63a35c">resource</span>> </<span style="color:#63a35c">resources</span>> </<span style="color:#63a35c">build</span>></code>
<code class="language-xml">2:读取资源文件到硬盘,然后使用</code></span></span></span>
@javax.annotation.Resource
private ResourceLoader resourceLoader;
String rootPath = "/home";
String configFilePath = rootPath + "/template/template.xlsx";
File configFile = new File(configFilePath);
if (!configFile.exists()) {
log.info("模板文件({})不存在,开始从resources里复制." + configFilePath);
copyResourceFile("classpath:/template/template.xlsx"configFilePath);
}
 
public void copyResourceFile(String sourceString target) throws IOException {
Resource resource = resourceLoader.getResource("classpath:" + source);
InputStream input = resource.getInputStream();
File targetFile = new File(target);
FileUtils.copyInputStreamToFile(inputtargetFile);
}