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

来源:互联网 发布:淘宝卖腾讯会员 编辑:程序博客网 时间:2024/06/06 12:28

当把一个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;//此时便获得了配置文件中的值,当资源文件发生变化的时候可以直接修改文件中对应的值}

通过上面的方法就可以获得了配置文件的值,获取这个方法不是很好,如果你有更好的方法,希望可以分享出来,共同学习。

0 0
原创粉丝点击