MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Bagaimana cara menggunakan referensi db dengan Spring Data MongoDB reaktif?

TL;DR

Tidak ada DBRef dukungan di Spring Data MongoDB reaktif dan saya tidak yakin akan ada.

Penjelasan

Proyek Spring Data diatur ke dalam komponen API Template, Konverter, dan Metadata Pemetaan. Implementasi imperatif (pemblokiran) dari Template API menggunakan pendekatan imperatif untuk mengambil Document s dan mengubahnya menjadi objek domain. MappingMongoConverter khususnya menangani semua konversi dan DBRef resolusi. API ini berfungsi dalam API sinkron/imperatif dan digunakan untuk implementasi API Template (imperatif dan reaktif).

Penggunaan kembali MappingMongoConverter adalah keputusan logis sambil menambahkan dukungan reaktif karena kami tidak perlu menggandakan kode. Satu-satunya batasan adalah DBRef resolusi yang tidak sesuai dengan model eksekusi reaktif.

Untuk mendukung DBRef reaktif s, konverter perlu dipecah menjadi beberapa bit dan seluruh penanganan asosiasi memerlukan perbaikan.

Referensi :https://jira.spring.io/browse/DATAMONGO-2146

Rekomendasi

Simpan referensi sebagai kunci/Id dalam model domain Anda dan cari sesuai kebutuhan. zipWith dan flatMap adalah operator yang sesuai, tergantung pada apa yang ingin Anda arsipkan (tingkatkan model dengan referensi, hanya referensi pencarian).

Pada catatan terkait:Reactive Spring Data MongoDB hadir sebagian dengan set fitur yang dikurangi. Ekstensi SpEL kontekstual adalah fitur yang tidak didukung karena komponen ini mengasumsikan model pemrograman imperatif dan dengan demikian eksekusi sinkron.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Pengindeksan Mongo pada array objek vs objek

  2. Agregat Mongodb pada subdokumen dalam array

  3. agregasi mongoDB kembali kosong

  4. Agregasi Mongodb dengan 2 koleksi

  5. Admin Django dan MongoDB, mungkinkah?