您的位置:首页 > 编程语言 > Java开发

SpringBoot中通过配置文件控制路径和变量(三)

2016-05-20 13:34 537 查看
当把一个springbooot打成jar时候,程序中要读的配置资源路径如何设置也会成为一个麻烦。假如使用的是IDEA开发,在IDEA中创建了maven项目,所有的资源文件放在resources目录下,当程序编译时会把resources中的所有资源copy到target中classes目录下。那么问题来了,当资源文件很大,编译时的copy就会消耗很长时间,同时当把整个项目打成jar的时候,jar就显得非常的大,如果要把jar放到别的环境下执行,对于jar的移动就显得很麻烦,所有为了节省编译时间和控制jar的大小,此处介绍如何把所有关于资源文件的路径读取放到配置文件application.properties中并且读取到变量。

1.在application.properties写入文件路径

在配置文件中添加:

#config all file path
你的文件名 = 路径
test.file=D:/demo/test.txt
根据要求定义容易识别的文件名


2.创建一个全局class,用来读取所有的变量,这样方便管理。

Global.java

package com.abner.config;

/**
* 定义了系统运行的所有路径类
*
*/
public class Global {
public static String TESTFILE = null;

}


3.创建一个APPConfig.java,用来获取所有配置文件中的变量

public class AppConfig {
//通过注解@value来获取配置文件的值
@Value("${test.file}")
String test.file;

@PostConstruct
public void adminConfig(){
//这时候Globa.TestFILE中的值
Global.TESTFILE = test.file;
}


4.执行类Test.java中获得值

public class Test{
private String filePath = Global.TESTFILE;
//此时便获得了配置文件中的值,当资源文件发生变化的时候可以直接修改文件中对应的值
}


通过上面的方法就可以获得了配置文件的值,获取这个方法不是很好,如果你有更好的方法,希望可以分享出来,共同学习。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: