我找到了一些使用JSON进行案例类转换的示例。但正常的课程呢?
假设我有一个普通的课程:
class User {
var username = "Freewind"
var email = "test@test.com"
var age = 10
}
如何将其转换为JSON,如下所示?
{
"username" : "Freewind",
"email" : "test@test.com",
"age" : 10
}
如何将其转换回User对象?
更新
我从问题中删除了“lift-json”。任何图书馆都没问题。
答案 0 :(得分:1)
我强烈建议切换到案例类,因为就框架而言,它打开了更多的大门。如果您不想切换,可以通过Jackson Scala Module选择杰克逊。使用该库和以下代码,我能够对User
类进行适当的双向序列化:
val mapper = new ObjectMapper()
mapper.registerModule(DefaultScalaModule)
val sw = new StringWriter
val u = new User
mapper.writeValue(sw, u)
val json = sw.toString()
val user = mapper.readValue(json.getBytes, classOf[User])
与其他依赖于案例类的框架相比,scala友好一点,但它会完成工作。