将频繁更改的 JSON 值映射到 Scala 中的相应元素
Map frequently changing JSON value to corresponding element in Scala
我有一个 JSON 值,例如
{
"valType": "Integer",
"data": 5
}
或
{
"valType": "Integer",
"data": [2, 3]
}
或
{
"valType": "String",
"data": "value1"
}
或
{
"valType": "String",
"data": ["string1", "string2"]
}
data 键的值正在改变。当我尝试使用
在 Scala 中映射这些内容时
class value {
var valType: String = _
var data: Any = _
}
使用 ObjectMapper,效果很好。
但是在尝试使用 lift-json 时,使用 class
case class value(valType: String, data: Any) {}
,报错
Exception in thread "main" net.liftweb.json.MappingException: No usable value for data
No information known about type
如何在 lift-json 中解决同样的问题?
版本:
斯卡拉:2.11
升力-json:2.6
您必须编写自定义序列化程序,根据 "valType" 字段的内容解析不同的 "value" 字段。
lift-json 自述文件的 Serializing non-supported types 部分介绍了如何编写序列化程序。
我有一个 JSON 值,例如
{
"valType": "Integer",
"data": 5
}
或
{
"valType": "Integer",
"data": [2, 3]
}
或
{
"valType": "String",
"data": "value1"
}
或
{
"valType": "String",
"data": ["string1", "string2"]
}
data 键的值正在改变。当我尝试使用
在 Scala 中映射这些内容时class value {
var valType: String = _
var data: Any = _
}
使用 ObjectMapper,效果很好。
但是在尝试使用 lift-json 时,使用 class
case class value(valType: String, data: Any) {}
,报错
Exception in thread "main" net.liftweb.json.MappingException: No usable value for data
No information known about type
如何在 lift-json 中解决同样的问题?
版本: 斯卡拉:2.11 升力-json:2.6
您必须编写自定义序列化程序,根据 "valType" 字段的内容解析不同的 "value" 字段。
lift-json 自述文件的 Serializing non-supported types 部分介绍了如何编写序列化程序。