期待更好的选择,这是我的解决方法:
val dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"val jodaDateReads = Reads[DateTime](js => js.validate[String].map[DateTime](dtString => DateTime.parse(dtString, DateTimeFormat.forPattern(dateFormat)) ))val jodaDateWrites: Writes[DateTime] = new Writes[DateTime] { def writes(d: DateTime): JsValue = JsString(d.toString())}val userReads: Reads[User] = ( (JsPath "name").read[String] and (JsPath "created").read[DateTime](jodaDateReads) )(User.apply _)val userWrites: Writes[User] = ( (JsPath "name").write[String] and (JsPath "created").write[DateTime](jodaDateWrites) )(unlift(User.unapply))implicit val userFormat: Format[User] = Format(userReads, userWrites)


