【发布时间】:2018-09-13 17:01:07
【问题描述】:
json4s 允许用户使用extract 将 JsonAST 对象转换为案例类。
import org.json4s._
import org.json4s.jackson.JsonMethods._
implicit val formats = DefaultFormats
case class Item(name: String, price: Double)
val json = parse("""{"name": "phone", "price": 1000.0}""") // JObject(List((name,JString(phone)), (price,JDouble(1000.0))))
val item = json.extract[Item] // Item(phone,1000.0)
但是,要将案例类转换为 JsonAST 对象,我能想到的唯一方法是:
- 使用
write序列化案例类 - 使用
extract反序列化字符串
如下:
parse(write(item)) // JObject(List((name,JString(phone)), (price,JDouble(1000.0))))
有没有更好的转换方法?谢谢!
【问题讨论】:
-
这是否涵盖了您想要的内容? stackoverflow.com/questions/22992472/…