Spring boot 加载自定义配置(写给自己以后看)

文章是写给自己以后看的

  • 配置
# 在xxx.properties中
accessToken=JXEbQ1l2
serviceUrl=http://127.0.0.1:8080
# 在xxx.yaml中
accessToken: JXEbQ1l2
serviceUrl: http://127.0.0.1:8080
  • 读取application.yaml或者application.properties , 直接使用@Value取值
    @Value("${accessToken}")
    private String              accessToken;
    @Value("${serviceUrl}")
    private String              serviceUrl;
  • 读取其它的配置(名字不为application),使用@PropertySource配合@Value
// 在spring主方法上加上注解@PropertySource
@PropertySource("classpath:config/config.properties")
@SpringBootApplication
public class DataShareClientApplication {
    public static void main(String[] args) {
        SpringApplication.run(DataShareClientApplication.class, args);
    }
}
// 然后就可以使用@Value取值
public class Processor {
    @Value("${accessToken}")
    private String              accessToken;
    @Value("${serviceUrl}")
    private String              serviceUrl;
}

注:如果配置文件在jar包的外面,没有打包在jar包里面,可以试一下使用@PropertySource("${user.dir}/xxx.properties") 加载。

以上的方式比较好用 , 还可以使用Environment 和 @ConfigurationProperties的方式,具体操作看下面的参考文章

参考:

  • Springboot 之 自定义配置文件及读取配置文件
  • Spring Boot使用自定义的properties

你可能感兴趣的:(Spring boot 加载自定义配置(写给自己以后看))