使用JSON透镜将json反序列化为Scala案例类的最佳实践是什么?
some.json:
[
{
"id": 1,
"name": "Alice"
},
{
"id": 2,
"name": "Bob"
},
{
"id": 3,
"name": "Chris"
}
]一些案例类:
case class Foo(id: Long, name: String)将some.json中的json转换为List[Foo]的最佳方法是什么?
发布于 2015-08-26 14:00:24
json-镜头支持喷雾器,使用喷雾-json你可以做到:
import spray.json._
case class Foo(id: Long, name: String)
object JsonProtocol extends DefaultJsonProtocol {
implicit val FooFormat = jsonFormat2(Foo)
}
import JsonProtocol._
val source = scala.io.Source.fromFile("some.json")
val json = try source.mkString.parseJson finally source.close()
json.convertTo[List[Foo]]
// List[Foo] = List(Foo(1,Alice), Foo(2,Bob), Foo(3,Chris))https://stackoverflow.com/questions/32226833
复制相似问题