Рассмотрим следующий JSON:Play Framework JsReads для имен объектов и значений
{
"1992": "this is dog",
"1883": "test string",
"1732": "unknown",
"2954": "future year"
}
Есть ли способ, с помощью JSON reads
превратить этот JSON в случае класса Scala? то есть a Seq[Years]
или Map[String, String]
, где год содержит год и описание.
Для справки, это то, как вы определяете read
для "простой" JSON структуры:
{
"name": "george",
"age": 24
}
неявной JsReads
implicit val dudeReads = (
(__ \ "name").read[String] and
(__ \ "age").read[Int]
) (Dude)
Вы можете пропустить проверку и последующее совпадение, просто написать «val result = json.as [Map [String, String]]'. – Eric
@Eric Метод as будет вызывать 'JsResultException', если путь не найден или преобразование невозможно. [Источник] (https://www.playframework.com/documentation/2.5.x/ScalaJson#Using-JsValue.as/asOpt) – Pranav