Spring YAML属性如何引用对象类型的另一个属性

时间:2019-04-02 02:54:05

标签: java spring yaml

我有一个YAML文件,其中一个属性引用了另一个属性。

例如

sidh:
    sftp:
        profile1:
            host: xxxx.com
            local:
                directory:
                    download: localDownload
            user: abctest
            password: Team334


    sf:
      mf:
        clientId: 2324
        clientSecret: sd23
        refreshToken: 23sds
        url: test.salesforce.com

    feeds:
        mf_company:
          processor: com.xxxx.ABC
          pattern: ABC_*
          sf: mf   # How to reference sidh.sf.mf
          sft: profile1 # How to reference sidh.sftp.profile1 

我正在使用Spring,但找不到关于属性(sidh.feeds.mf_company.sf or sft)如何引用另一个对象类型属性(sidh.sf.mf, sidh.sftp.profile1)的现成库/示例。我可以编写自定义代码来表示此YAML并创建引用。

我的问题是:是否有任何可用的现成库可用于处理这种情况?

1 个答案:

答案 0 :(得分:0)

您的方案没有开箱即用的解决方案。 YAML仅支持简单的键值字典,而没有任何对象实现。

如果希望使用配置作为对象,则需要创建自己的实现,如代码中所述。