将大POJO转换为案例类

时间:2016-02-18 15:33:35

标签: java json scala pojo

现在我将遗留Java项目迁移到Scala。

我遇到了以下问题:我调用返回java.util.List<SomePojo>的远程服务。 SomePojo类包含大约50个字段,我感兴趣的是以JSON格式将其传递给UI的最佳做法。

我正在使用scalatra框架,它很好,但是如何将这个POJO放到case类中,而case类只限于21个字段?或者有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

这是Scala 2.11中的fixed

如果您不能使用2.11,请将字段拆分为单独的案例类,然后将它们合并为一个。

case class Part1(a: Int, b: Int, c: Int)
case class Part2(d: Int, e: Int, f: Int)
case class Aggregate(part1: Part1, part2: Part2)

val aggregate = Aggregate(Part1(0, 1, 2), Part2(3, 4, 5))

aggregate match {
    case Aggregate(Part1(a, b, c), Part2(d, e, f)) =>
}