springboot读取jar包资源文件文件
2024-01-12 08:48阅读:
先修改pom.xml文件.使打包后的jar包含你的资源文件
在pom.xml文件下的build选项中的src/main/resources的目录下
添加配置
<<span
class='hljs-name' >build> <<span
class='hljs-name' >plugins> <<span
class='hljs-name' >plugin> <<span
class='hljs-name'
>groupId>org.springframework.boot</<span
class='hljs-name' >groupId> <<span
class='hljs-name'
>artifactId>spring-boot-maven-plugin</<span
class='hljs-name' >artifactId> </<span
class='hljs-name' >plugin>
SPAN>> <<span class='hljs-name'
>resources> <<span class='hljs-name'
>resource> <<span class='hljs-name'
>directory>src/main/java</<span
class='hljs-name' >directory> <<span
class='hljs-name' >includes> <<span
class='hljs-name' >include>***.xml</<span
class='hljs-name' >include> </<span
class='hljs-name' >includes> <<span
class='hljs-name' >filtering>false</<span
class='hljs-name' >filtering> </<span
class='hljs-name' >resource> <<span
class='hljs-name' >resource> <<span
class='hljs-name'
>directory>src/main/resources</<span
class='hljs-name' >directory> <<span
class='hljs-name' >includes> <<span
class='hljs-name' >include>***.xml</<span
class='hljs-name' >include> <<span
class='hljs-name' >include>***.js</<span
class='hljs-name' >include> <<span
class='hljs-name'
>include>**/*.html</<span
class='hljs-name' >include>template/*.xlsx </<span class='hljs-name'
>includes> <<span
class='hljs-name' >filtering>false</<span
class='hljs-name' >filtering> </<span
class='hljs-name' >resource> </<span
class='hljs-name' >resources> </<span
class='hljs-name' >build>
2:读取资源文件到硬盘,然后使用
@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 source, String
target) throws IOException {
Resource resource =
resourceLoader.getResource('classpath:' +
source);
InputStream input =
resource.getInputStream();
File targetFile =
new File(target);
FileUtils.copyInputStreamToFile(input,
targetFile);
}