如何使用Anorm格式化DateTime?

时间:2015-05-15 10:16:04

标签: scala datetime anorm

我得到了"时间"来自mysql并需要将其渲染为fe,但我得到的是" time"以时间戳的形式,我希望它显示为yyyy-MM-dd HH:mm:ss,如何在服务器代码中执行如下操作?

object JDItem {

  val jditem = {
    get[Long]("id") ~
    get[String]("name") ~
    get[String]("url") ~
    get[Double]("price") ~
    get[Int]("commentnum") ~
    get[Int]("likerate") ~
    get[DateTime]("time") ~
    get[String]("category") map {
      case id ~ name ~ url ~price~
        commentnum~likerate~time~category => JDItem(id,name,url,price,
        commentnum,likerate,time,category)
    }
  }

  implicit val JDItemWrites: Writes[JDItem] = (
    (JsPath \ "id").write[Long] and
      (JsPath \ "name").write[String] and
      (JsPath \ "url").write[String] and
      (JsPath \ "price").write[Double] and
      (JsPath \ "commentnum").write[Int] and
      (JsPath \ "likerate").write[Int] and
      (JsPath \ "time").write[DateTime] and
      (JsPath \ "category").write[String]
    )(unlift(JDItem.unapply))

  def getJson(category:String,sort:String,DescOrAsc:String):JsObject = DB.withConnection{ implicit c =>
    val list = SQL("select id,name,url,price,commentnum,likerate,time,category from "+category+" order by "+sort+" "+DescOrAsc+" limit 100").as(jditem *)
    val json:JsValue = Json.toJson(list)
    val jsobject = Json.obj("total"-> list.length,"rows"-> json)
    jsobject
  }

}

1 个答案:

答案 0 :(得分:2)

自Anorm版本2.3.8以来,Joda&结果解析器支持Java8时态类型;见Anorm columnget[DateTime]