case class ErrorCode(status: Int, message: String)
implicit val errorcodeWriters = new Writes[ErrorCode] {
def writes(errorcode: ErrorCode) = Json.obj (
"status" -> errorcode.status,
"message" -> errorcode.message
)
}
implicit val errorcodeWriters: Writes[ErrorCode] = (
(JsPath \ "status").write[Int] and
(JsPath \ "message").write[String]
)(unlift(ErrorCode.unapply))
implicit val errorcodeReaders: Reads[ErrorCode] = (
(JsPath \ "status").read[Int] and
(JsPath \ "message").read[String]
)(ErrorCode.apply _)
case class Location(lat: Double, long: Double)
val xjson = Json.toJson(ErrorCode(101, "zxcv"))
val status = (xjson \ "status").as[String]
val errcode:JsResult[ErrorCode] = xjson.validate[ErrorCode]
errcode match {
case s: JsSuccess[ErrorCode] => Logger.info(s"deparsed message ${s.get.message}")
case e: JsError => println("Errors: " + JsError.toFlatForm(e).toString)
}
Play framework + Scala + Json
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 1 JSON开发简介 Play提供了一套基于jackson开发的JSON库,帮助开发者便捷地处理JSON数据。目前...
- 本文作者 Jacek Laskowski 拥有近20年的应用程序开发经验,现 CodiLime 的软件开发团队 L...
- 介绍 本文的目标是通过一个用户登录示例,简要的介绍使用Play进行Web开发的基本流程。本文并不会手把手教你如何创...
- 欢迎来访PlayScala社区(http://www.playscala.cn/) 在开始阅读本文之前,请确保你熟...