如何在Play framework 2.3.x(Scala)中将POJO转换为JSON?
发布时间:2020-12-16 18:58:06 所属栏目:安全 来源:网络整理
导读:任何人都可以告诉我如何使用 Scala将POJO或类实例转换为Play框架中的 JSON(特别是Play v2.3.x)? 例如,我有这样的代码: case class Foo(name: String,address: String)def index = Action { request = { val foo = Foo("John Derp","Jem Street 21") // I w
任何人都可以告诉我如何使用
Scala将POJO或类实例转换为Play框架中的
JSON(特别是Play v2.3.x)?
例如,我有这样的代码: case class Foo(name: String,address: String) def index = Action { request => { val foo = Foo("John Derp","Jem Street 21") // I want to convert this object to JSON Ok(Json.toJson(foo)) // I got error at here } } 错误消息:
更新:我发现上面的错误是由于错误导入Json类引起的,它应该是:import play.api.libs.json.Json.但是我仍然在下面的隐含问题上有错误. 我读过this tutorial,但是当我尝试隐式Writes [Foo]代码时: implicit val fooWrites: Writes[Foo] = ( (JsPath "name").write[String] and (JsPath "address").write[String] )(unlift(Foo.unapply)) 我得到无法解析符号和无法解决Intellij中的符号解除错误.此外,教程的代码看起来很复杂,只是为了将对象转换为JSON.我想知道是否有更简单的方法来做到这一点? 解决方法
您可以使用Json.writes获取Writes [Foo]实例:
implicit val fooWrites = Json.writes[Foo] 将此隐含在范围内是将Foo转换为JSON所需的全部内容.有关JSON读/写的更多信息,请参阅文档here和here. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |