簡體   English   中英

如何獲取要作為日期存儲在MongoDB中而不是Int64的日期?

[英]How do I get a Date to store as a Date in MongoDB instead of an Int64?

我正在使用新的MongoDB Scala驅動程序。 當我存儲java.util.Date時,它作為Int64而不是MongoDB日期存儲在MongoDB中。 我有一些看起來像這樣的代碼:

implicit val writer = new Writes[Forecast] {
  def writes(x: Forecast): JsValue = {
    Json.obj(
      // ...
      "issueDateTime" -> x.issueDateTime // which is a java.util.Date
      // ...
    )
  }
}

但是在MongoDB中最終是Int64,而不是日期。 如何獲取日期到MongoDB?

如果您使用的是最新的MongoDB Scala驅動程序v1.1 與其嘗試使用Json.obj來構建文檔,不如嘗試使用Document類。

BsonTransformer會將java.util.Date轉換為BsonDateTime

例如:

val newdate = new Date()
val doc: Document = Document("test" -> newdate)
collection.insertOne(doc).results()

將導致:

{  "_id" : ObjectId("56665bf619a63d9e538b2851"), 
    "test" : ISODate("2015-12-08T04:26:29.999Z") 
}

希望能有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM