spring boot如何实现自定义配置源
导读:本文共1818.5字符,通常情况下阅读需要6分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 概述我们知道,在Spring boot中可以通过xml或者@ImportResource 来引入自己的配置文件,但是这里有个限制,必须是本地,而且格式只能是 properties(或者 yaml)。那么,如果我们有远程配置,如何把他引入进来来呢。如何做其实自定义配置源只需要3步第一步,编写PropertySource编写一个类继承EnumerableProper... ...
目录
(为您整理了一些要点),点击可以直达。概述
我们知道,在Spring boot中可以通过xml或者@ImportResource 来引入自己的配置文件,但是这里有个限制,必须是本地,而且格式只能是 properties(或者 yaml)。那么,如果我们有远程配置,如何把他引入进来来呢。
如何做
其实自定义配置源只需要3步
第一步,编写PropertySource
编写一个类继承EnumerablePropertySource,然后实现它的抽象方法即可,抽象方法看名字就知道作用,简单起见,这里使用一个map来保存配置,例如:
第二步,编写PropertySourceLocator
PropertySourceLocator 其实就是用来定位我们前面的PropertySource,需要重写的方法只有一个,就是返回一个PropertySource对象,例如,
第三步,让PropertySourceLocator生效
新建一个配置类,例如
最后再创建/更新 META-INFO/spring.factories(如果做过自定义Spring boot开发的都知道这个文件)
简单来说就是给Spring Boot说,这个是一个启动配置类(一种优先级很高的配置类)。
编写测试
测试一
正确输出
测试二
我们在application配置文件中,引入这个变量呢,例如在application.properties中
同样,结果也是能够生效的
myName就是上面在PropertySourceLocator中写进去的配置属性。运行程序,可以看见确实是可以正确输出。
spring boot如何实现自定义配置源的详细内容,希望对您有所帮助,信息来源于网络。