Работа с ReactiveMongo (для приложений play Framework) в 2020 году

#mongodb #scala #reactivemongo #play-reactivemongo

#mongodb #scala #reactivemongo #воспроизведение-reactivemongo

Вопрос:

Я создал новый проект playframework 2.8, и мои дилеммы:

1. какую зависимость мне следует использовать:

 "org.reactivemongo" %% "reactivemongo" % "1.0"
  

или

   "org.reactivemongo" %% "play2-reactivemongo" // dont even think that there is 1.0 for play 2.8, is it deprecated?
  

2. до сих пор я использовал play-json для сериализации / десериализации моих объектов, которые я вставлял или извлекал из mongo, например:

 object MongoSerializer {
  implicit val InstantFormat = CommonSerializers.InstantSerializers.BSONFormat
  implicit val MetadataFormat: OFormat[Metadata] = Json.format[Metadata]
  implicit val PairingFormat: OFormat[Pairing] = Json.format[Pairing]
  implicit val pairTypeFormat: Format[PairType] = EnumFormats.formats(PairType)
}
  

и в моем dbconfig, который я использовал _.collection[JSONCollection] , но я помню, что кто-то написал, что JSONCollection он скоро устареет, и будет поддерживаться только BSONCollection so, с которым я хотел работать BSONCollection .

итак, как вы можете видеть, я немного в замешательстве, если есть кто-то, кто может помочь мне понять, какие настройки мне следует использовать и какие сериализации / десериализации подойдут лучше всего, я буду признателен за выделение. Спасибо!

Комментарии:

1. Пожалуйста, сначала прочитайте документацию

2. @cchantep вы правы, я потратил больше времени на документацию и нашел ее очень полезной. Теперь у меня все готово с версией "1.0.0-play28" . Спасибо.

Ответ №1:

Я выберу первый вариант, потому что часть моего результата — это агрегирование / настройка различных коллекций. Таким образом, мне придется самому писать пользовательские конвертеры BSON / JSON.