6. 提供其他格式

来自环境端点的默认 JSON 格式非常适合 Spring 应用程序使用,因为它直接 Map 到Environment抽象。如果愿意,可以通过在资源路径中添加后缀(“ .yml”,“.yaml”或“ .properties”)来使用与 YAML 或 Java 属性相同的数据。对于不关心 JSON 终结点的结构或它们提供的额外元数据的应用程序来说,这可能很有用(例如,不使用 Spring 的应用程序可能会受益于此方法的简单性)。

YAML 和属性表示形式还有一个附加标志(提供为名为resolvePlaceholders的布尔查询参数),以 signal 表示应尽可能在渲染之前在输出中解析源文档(标准 Spring ${…}格式)中的占位符。对于不了解 Spring 占位符约定的使用者来说,这是一个有用的功能。

Note

使用 YAML 或属性格式存在一些限制,主要是与元数据丢失有关。例如,JSON 被构造为属性源的有序列表,其名称与该源相关。即使值的来源有多个来源,YAML 和属性表单也会合并到一个 Map 中,并且原始来源文件的名称也会丢失。同样,YAML 表示也不一定是后备存储库中 YAML 源的忠实表示。它由一系列平面属性来源构成,并且必须对密钥的形式进行假设。