springboot 加载jar内外自定义的配置文件

springboot 加载jar内外自定义的配置文件

import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;

@Configuration
// 后面的文件存在的话会覆盖前面的, 已验证
@PropertySource(value={"classpath:config/config.properties","file:config/config.properties"}, ignoreResourceNotFound=true)
public class TestConfig {

    @Value("${my.test}")
    public String mytest;

}

注意:PropertySource多个配置文件时,后面的文件存在的话会覆盖前面的

classpath:config/config.properties 是jar包内 resource目录下的config/config.properties
file:config/config.properties 是jar包外 启动程序的目录下的config/config.properties (注意:如果是用脚本启动运行,则config路径在脚本所在目录)

其他地方要获取配置文件中的变量,例如

 	@Autowired
    TestConfig testConfig;

	//...
	testConfig.mytest
	//...

版权声明:本文为a704397849原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。