1

我正在为 Scala 寻找一个好的 JSON 库,它可以将任意对象图序列化为 JSON,而无需我编写映射代码。

Java 的 Jackson 做到了这一点,但它不是 Scala 原生的,我在反序列化嵌套泛型(我将其归因于 Java 类型系统)时遇到了一些麻烦。Jerkson 是 Jackson 的 Scala 包装器,但它已经被废弃了几年。

你有什么建议吗?

4

2 回答 2

0

Core Jackson 没有明确的 Scala 支持,但 Jackson Scala 模块:

https://github.com/FasterXML/jackson-module-scala

确实支持 Scala 数据类型。

于 2015-12-16T00:32:17.773 回答
0

play-jsonhttp://mvnrepository.com/artifact/com.typesafe.play/play-json_2.11,是一个不错的选择。它实际上是 Jackson 的包装器,但提供了许多实用程序来减轻序列化和反序列化。更多详情,https://www.playframework.com/documentation/2.4.x/ScalaJson

此外,它已经为 Scala 中的基本数据类型提供了读写功能。您需要做的就是在伴随对象中定义模型的格式。

import play.api.libs.json.Json
implicit val format = Json.format[YourObject]

这是一个详细的例子,https://github.com/luongbalinh/play-mongo/blob/master/app/models/User.scala

于 2015-12-14T16:39:50.477 回答