gpt4 book ai didi

scala - 案例类层次结构的lift-json序列化

转载 作者:行者123 更新时间:2023-12-04 01:08:48 26 4
gpt4 key购买 nike

我有如下层次结构:

case class A(val a: Long, val b: String)

case class B(val c: String) extends A(a=3, b="a string")

我正在尝试使用lift-json ala序列化它,如下所示:
val obj = B(c="another string")
val cameraJson = net.liftweb.json.Serialization.write(obj)

但我看到的是它只序列化 B 类中的属性,而不序列化 A 中的属性。

我也试过:
compact(render(decompose(obj)))

同样的结果

是什么赋予了? Scala 中是否有一些明显的东西我遗漏了?

最佳答案

case 类继承是 Scala 不推荐使用的特性。例如,这应该有效:

trait A { val a: Long; val b: String }
case class B(a: Long = 3, b: String = "a string", c: String) extends A

val obj = B(c="another string")
var ser = Serialization.write(obj)
Serialization.read[B](ser)

关于scala - 案例类层次结构的lift-json序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7266724/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com