从scala对象中提取特定字段<-&燃气轮机;Json
在转换为Json之前,我试图从Scala对象中提取某些字段。有没有一个简单的方法可以做到这一点从scala对象中提取特定字段<-&燃气轮机;Json,json,scala,dictionary,jackson,Json,Scala,Dictionary,Jackson,在转换为Json之前,我试图从Scala对象中提取某些字段。有没有一个简单的方法可以做到这一点 如果我可以从Json中创建一个带有特定字段的新Json,那么它也可以工作 您只需提取Json的值,scala就会为您提供相应的映射。例如: var myJson = Json.obj( "customerId" -> "xyz", "addressId" -> "xyz", "firstName" -> "xyz",
如果我可以从Json中创建一个带有特定字段的新Json,那么它也可以工作 您只需提取Json的值,scala就会为您提供相应的映射。例如:
var myJson = Json.obj(
"customerId" -> "xyz",
"addressId" -> "xyz",
"firstName" -> "xyz",
"lastName" -> "xyz",
"address" -> "xyz"
)
假设您有上述类型的Json。要将其转换为地图,只需执行以下操作:
var mapFromJson = myJson.value
这将为您提供一个类型为:scala.collection.immutable.HashMap$HashTrieMap的映射,您只需提取Json的值,scala就会为您提供相应的映射。例如:
var myJson = Json.obj(
"customerId" -> "xyz",
"addressId" -> "xyz",
"firstName" -> "xyz",
"lastName" -> "xyz",
"address" -> "xyz"
)
假设您有上述类型的Json。要将其转换为地图,只需执行以下操作:
var mapFromJson = myJson.value
这将为您提供以下类型的映射:scala.collection.immutable.HashMap$HashTrieMap如果没有更多详细信息,很难说。假设您有以下Scala案例类
case class SomeObject(customerId: Long, addressId: Long, firstName: String, lastName: String, address: String)
…您希望提取“firstName”、“lastName”和地址字段,然后将对象转换为Json。使用可以为SomeObject
类在伴生对象上定义隐式转换
object SomeObject {
implicit val someObjectWrites = new Writes[SomeObject] {
def writes(object: SomeObject) = Json.obj(
"firstName" -> object.firstName,
"lastName" -> object.lastName,
"address" -> object.address
)
}
}
然后您可以按如下方式使用代码:
val obj = SomeObject(12345, 678910, "John", "Doe", "My Address")
val json = Json.toJson(obj)
请注意,除了
播放JSON
,可能还有其他支持类似功能的JSON库。没有更多细节,很难说。假设您有以下Scala案例类
case class SomeObject(customerId: Long, addressId: Long, firstName: String, lastName: String, address: String)
…您希望提取“firstName”、“lastName”和地址字段,然后将对象转换为Json。使用可以为SomeObject
类在伴生对象上定义隐式转换
object SomeObject {
implicit val someObjectWrites = new Writes[SomeObject] {
def writes(object: SomeObject) = Json.obj(
"firstName" -> object.firstName,
"lastName" -> object.lastName,
"address" -> object.address
)
}
}
然后您可以按如下方式使用代码:
val obj = SomeObject(12345, 678910, "John", "Doe", "My Address")
val json = Json.toJson(obj)
请注意,除了
播放JSON
,可能还有其他支持类似功能的JSON库。提供一些示例。提供一些示例。