我有一个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并创建引用。

我的问题是:有没有可用的现成库来处理这种情况?

最佳答案

没有适合您的方案的现成解决方案。
YAML仅支持简单的键值字典,而没有任何对象实现。

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

09-30 13:52