sql >> Database teknologi >  >> NoSQL >> MongoDB

Sådan opsætter du Play!2.5 med ReactiveMongo

Sørg for at du har korrekte konfigurationer i application.conf

play.modules.enabled += "play.modules.reactivemongo.ReactiveMongoModule"
mongodb.uri = "mongodb://localhost:27017/demodb"

Du skal injicere og ændre mongo-koden som nedenfor

class MongoUserDao @Inject() (val reactiveMongoApi: ReactiveMongoApi)
extends UserDao {
//  val users = reactiveMongoApi.db.collection[JSONCollection]("users") -- old API
//   def find(userId:UUID):Future[Option[User]] =
//    users.find(Json.obj("id" -> userId)).one[User]  -- old code

  def usersF = reactiveMongoApi.database.map(_.collection[JSONCollection]("users"))  //new API

  def find(userId:UUID):Future[Option[User]] = for {
    users <- usersF
    user <- users.find(Json.obj("id" -> userId)).one[User]
  } yield user     // new code
}

Hvis du sammenligner ny api-kode med gammel api-kode, returnerer reactiveMongoApi.database.map Future[Collection].




  1. Sådan bruger du Liquibase-MongoDb-Spring-boot

  2. Forbindelsesstreng i MongoDB (med eksempler)

  3. Hvordan kan jeg få top n spande til en sammenlægning og alle andre spande kombineret til en anden spand?

  4. Indeks eksisterer allerede med forskellige valgmuligheder, mens du bruger createIndex() i den nyeste MongoDB java-driver