MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

trình điều khiển scala mongodb - không thể truy xuất tài liệu

Được rồi, tôi tự trách mình (và tài liệu bí ẩn về trình điều khiển)

Trình điều khiển này không đồng bộ, vì vậy chúng tôi chỉ cần đợi nó hoàn thành ... Vì vậy, để tổng hợp bằng cách sử dụng (tìm thấy tại đây ) được sử dụng thực sự trong tài liệu mà không có trong chính trình điều khiển

implicit class DocumentObservable[C](val observable: Observable[Document]) extends ImplicitObservable[Document] {
   override val converter: (Document) => String = (doc) => doc.toJson
}

implicit class GenericObservable[C](val observable: Observable[C]) extends ImplicitObservable[C] {
   override val converter: (C) => String = (doc) => doc.toString
}

trait ImplicitObservable[C] {
  val observable: Observable[C]
  val converter: (C) => String

  def results(): Seq[C] = Await.result(observable.toFuture(), Duration(10, TimeUnit.SECONDS))
  def headResult() = Await.result(observable.head(), Duration(10, TimeUnit.SECONDS))
  def printResults(initial: String = ""): Unit = {
    if (initial.length > 0) print(initial)
    results().foreach(res => println(converter(res)))
  }
  def printHeadResult(initial: String = ""): Unit = println(s"${initial}${converter(headResult())}")
}

Và thay đổi truy xuất theo cách đó:

def retrieveDocument(id: Int, collectionName: String, databaseName: String, url: String): Option[Document] = {
var res: Option[Document] = None
getMongoCollectionImmutable(collectionName, databaseName, url)
  .find(Filters.equal("_id", id))
  .limit(1).results().foreach({ x => res = Some(x) })
res

}

Nó khắc phục được sự cố của tôi.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Spring java MongoDB chú thích @Query cho các bản ghi đầu tiên hoặc đầu tiên của thứ tự

  2. Cách kết nối với MongoDB bằng PhantomJS

  3. Cách dễ dàng quản lý các bản cập nhật cơ sở dữ liệu và các bản vá bảo mật

  4. Cách xác định mêtích để nhập mongodb

  5. chuyển đổi cơ sở dữ liệu từ mysql sang mongoDb