我正在尝试从json数据集中提取值,其中每个记录都有n> 22个键值对。为了做到这一点,我实现了一个带有n个成员变量的case类。但是,scala 2.10.x编译器报告了"实现限制:案例类的参数不能超过22个。"
似乎问题来自scala编译器的限制,但是有没有绕道来解决这个问题?
更新:
我尝试将大案例类分解为较小的案例类(使用嵌套案例类),但在这种情况下程序无法正确解析json。我认为json4s的实现不允许我们这样做。
答案 0 :(得分:5)
1:切换到scala 2.11
2:使用嵌套案例类。例如,如果您拥有“Person”类的大型模型,则可以将其拆分为:
case class Details(firstName: String, lastName: String, ...)
case class Address(state: String, street: String, ...)
case class Person(details: Details, address: Address)