基于文件的存储库

使用基于文件的(git、svn 和本机)存储库,文件名在 (、 、 等) 中的资源在所有客户端应用程序之间共享。 您可以使用具有这些文件名的资源来配置全局默认值,并根据需要将其替换为特定于应用程序的文件。application*application.propertiesapplication.ymlapplication-*.propertiesSpring中文文档

属性覆盖功能还可用于设置全局默认值,以及占位符应用程序 允许在本地覆盖它们。Spring中文文档

对于“本机”配置文件(本地文件系统后端),您应该使用不属于服务器自身配置的显式搜索位置。 否则,默认搜索位置中的资源将被删除,因为它们是服务器的一部分。application*
对于“本机”配置文件(本地文件系统后端),您应该使用不属于服务器自身配置的显式搜索位置。 否则,默认搜索位置中的资源将被删除,因为它们是服务器的一部分。application*

Vault 服务器

使用 Vault 作为后端时,您可以通过将 configuration 放在 中来与所有应用程序共享配置。 例如,如果运行以下 Vault 命令,则使用配置服务器的所有应用程序都将具有这些属性并可供其使用:secret/applicationfoobazSpring中文文档

$ vault write secret/application foo=bar baz=bam

CredHub 服务器

使用 CredHub 作为后端时,可以通过将配置放入或将其放置在应用程序的配置文件中来与所有应用程序共享配置。 例如,如果运行以下 CredHub 命令,则使用配置服务器的所有应用程序都将具有这些属性并可供它们使用:/application/defaultshared.color1shared.color2Spring中文文档

credhub set --name "/application/profile/master/shared" --type=json
value: {"shared.color1": "blue", "shared.color": "red"}
credhub set --name "/my-app/default/master/more-shared" --type=json
value: {"shared.word1": "hello", "shared.word2": "world"}

JDBC 环境存储库

要使用 JDBC 后端共享配置,请将记录插入到数据库中,并将要在所有客户机之间共享的条目的应用程序列中的值作为值。然后,特定于应用程序的属性可以覆盖这些共享配置,从而提供对应用程序环境的灵活性和控制。'application'Spring中文文档

INSERT INTO PROPERTIES (APPLICATION, PROFILE, LABEL, KEY, VALUE)
VALUES ('application', 'default', 'master', 'a.b.c', 'shared-value');
INSERT INTO PROPERTIES (APPLICATION, PROFILE, LABEL, KEY, VALUE)
VALUES ('myapp', 'prod', 'master', 'd.e.f', 'specific-value');

有关使用 JDBC 存储库进行设置和配置管理的详细示例,请参阅实现和相关测试。JdbcEnvironmentRepositorySpring中文文档