1.背景:
项目都是配置的Apollo配置中心来进行配置的。新功能需要yml格式的数据(层级结构更清晰)
2.问题:
1)Apollo是否支持yml格式的配置信息?
2)配置好了以后读取不到Apollo配置的yml。
3.解决:
3.1Apollo配置yml的配置
如图,有说明如何创建yml,必须是private的才能创建。
3.2 项目如何配置,才能获取到新加的yml namespace
我新建的namespace叫flow
配置application.properties来读取Apollo配置信息
首先是错误配置,这种配置是无法读取到配置信息的
app.id=
apollo.meta=
apollo.bootstrap.enabled=true
apollo.bootstrap.namespaces=application,flow
spring.mvc.pathmatch.matching-strategy= ANT_PATH_MATCHER
正确的配置
app.id=
apollo.meta=
apollo.bootstrap.enabled=true
apollo.bootstrap.namespaces=application,flow.yml
spring.mvc.pathmatch.matching-strategy= ANT_PATH_MATCHER
重要的是,namespace后要加上.yml这样才能获取到。
提示:
具体有么有获取到可以查看target打包文件下,是否有那个namespace的配置文件:
配置文件会显示flow.yml.properties,但是这并不影响正常对yml的使用,无需担心。
通过@Value或@ConfigurationProperties都可以正常的读取和映射