case class Weather(zip : String, temp : Double, isRaining : Boolean)
나는 HOCON 설정 파일을 사용하고있는 경우를 :
allWeather {
BeverlyHills {
zip : 90210
temp : 75.0
isRaining : false
}
Cambridge {
zip : 10013
temp : 32.0
isRainging : true
}
}
자동으로 Weather
개체를 인스턴스화하는 typesafe config를 사용하는 방법은 없나요?
나는 형태
val config : Config = ConfigFactory.parseFile(new java.io.File("weather.conf"))
val bevHills : Weather = config.getObject("allWeather.BeverlyHills").as[Weather]
이 솔루션은 "allWeather.BeverlyHills"
에 의해 참조 값이 JSON "덩어리"는 사실을 활용할 수있는 무언가를 찾고 있어요.
def configToWeather(config : Config) =
Weather(config.getString("zip"),
config.getDouble("temp"),
config.getBoolean("isRaining"))
val bevHills = configToWeather(config.getConfig("allWeather.BeverlyHills"))
을하지만 날씨 정의에 어떤 변화도 configToWeather
의 변경을 필요로하기 때문에 그 우아 보인다
나는 분명 내 자신의 파서를 작성할 수 있습니다.
귀하의 검토와 답변에 미리 감사드립니다.
+1 for pureconfig. 스프링 부트의 탁월한 [구성 관리] (https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html)에 익숙한 pureconfig는 스칼라에서 찾을 수 있습니다. –