Typesafe配置:获取为地图

时间:2019-06-13 13:06:27

标签: scala typesafe

googlesheets{
 dmkb_sheet = "1xEC8CPlKn654321wcoS_JB12345cPPiaA0M"
 other_sheet = "123isS0M30TH3R1D"
}

我想使用类似myConfig.getAsMap("googlesheets")的东西,并将两个嵌套条目作为Map获取。不存在这种方法。那么将两个嵌套条目作为Map加载的最简单方法是什么?

3 个答案:

答案 0 :(得分:4)

对于简单的定义,您可以使用类似以下的内容:

val config = conf.atKey("googlesheets")
config.root.keySet.asScala.map(key ⇒ key → config.getString(key)).toMap

我认为使用库将配置映射到案例类(例如pureconfig

)会更加容易

答案 1 :(得分:1)

好,那很容易。

view可以解决问题

(我被固定在前缀为“ get”的方法上,所以错过了它)

答案 2 :(得分:0)

谢谢。我通过如下重写您的答案来使它正常工作:

config.entrySet().asScala.map(e => e.getKey -> e.getValue.render()).toMap