MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Mongodb Document vers la classe de cas Scala

Vous devez fournir un codec personnalisé pour $date champ. Ce qui suit montre comment cela se fait dans play-json mais le concept est similaire dans d'autres bibliothèques JSON :

object WorkOrder {
  implicit val dateRead: Reads[Date] =
    (__ \ "$date").read[Long].map(date => new Date(date))

  implicit val dateWrite: Writes[Date] = new Writes[Date] {
    def writes(date: Date): JsValue = Json.obj("$date" -> date.getTime)
  }

  implicit val codec = Json.format[WorkOrder]
}