在服务中阅读application.yml

时间:2017-09-20 20:15:09

标签: java spring

我有一个oracle休息终点,我从那里读取条目。 这是我的application.yml

spring:
  profiles:
    active: dev
oracleUrl: https://cloud-url/filter_by/login_id/

OracleProperties

@Configuration
@ConfigurationProperties
public class OracleProperties {

    @Value("${oracleUrl}")
    String oracleUrl;

    public String getOracleUrl() {
        return oracleUrl;
    }

    public void setOracleUrl(String oracleUrl) {
        this.oracleUrl = oracleUrl;
    }
}

Application.java

@EnableConfigurationProperties({OracleProperties.class})
@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}

服务

@Autowired
private OracleProperties oracleProperties;

String oracleUrl = oracleProperties.getOracleUrl();

我的oracleUrl为空,请让我知道我哪里出错了。

1 个答案:

答案 0 :(得分:3)

@Configuration上不需要OracleProperties注释。 @ConfigurationProperties("oracle")会选择前缀为oracle的所有媒体资源。帮助对具有oracle前缀的属性系列进行分组。另请注意,@Value属性之上没有url

@ConfigurationProperties("oracle")
public class OracleProperties {

    private String url;

    public String getUrl() {
        return oracleUrl;
    }

    public void setUrl(String url) {
        this.url = url;
    }
}

application.yml

的更改
oracle:
  url: https://cloud-url/filter_by/login_id/