迭代在类型安全配置文件中的字段

时间:2016-02-05 22:32:45

标签: scala typesafe

在我的Scala应用程序中,我有这样的配置:

datasets {
    dataset1 = "path1"
    dataset2 = "path2"
    dataset3 = "path3"
}

何我迭代所有数据集以获取地图[数据集,路径]?

2 个答案:

答案 0 :(得分:2)

您可以在使用entrySet()

进行配置后致电getConfig()
import scala.collection.JavaConversions._
val config = ConfigFactory.load()
val datasets = config.getConfig("datasets")
val configMap = datasets.entrySet().toList.map(
  entry => (entry.getKey, entry.getValue)
).toMap

您最终会得到Map[String, ConfigValue]

答案 1 :(得分:0)

您可以尝试我的scala包装器7 - 它支持直接从配置对象读取本机scala类型:

val datasets = config.as[Map[String, String]]("datasets")