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

nama bidang ClassName sedang dimasukkan ke dalam mongodb oleh morphia

Anda dapat secara eksplisit menonaktifkan className atribut:@Entity(noClassnameStored = true)

Saya biasanya menekan atribut, jika ada kelas entitas tunggal. Jika saya mensubklasifikasikan entitas saya, saya secara eksplisit mengaktifkannya (yang merupakan default, tetapi hanya untuk memastikan).

Kalau tidak salah, Morphia cukup pintar menebak subclass yang benar berdasarkan propertinya meski tidak ada className (berdasarkan refleksi). Jadi jika Anda memiliki atribut mongoKnowledge di subkelas Anda Pengembang dari Orang dan subkelas Anda Manajer tidak memilikinya, Morphia akan mengetahui dokumen itu dengan mongoKnowledge harus dari kelas Pengembang . Jadi sebenarnya className hanya diperlukan jika subkelas Anda memiliki atribut yang sama; namun, saya tidak akan terlalu mengandalkannya.

Saya belum mencoba mengganti nama kelas entitas, tetapi mungkin akan menyebabkan masalah. Ada masalah lama untuk memberikan @Polimorphic penjelasan dan untuk memperbaikinya bersama-sama dengan itu. Lihat https://code.google.com/p/morphia/issues/detail?id=22



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Rata-rata bergerak dengan kerangka agregasi MongoDB?

  2. Bagaimana cara mengatur _id ke dokumen db di Mongoose?

  3. Menangani Custom BSON Marshaling

  4. Pencarian diacriticInSensitive MongoDB tidak menampilkan semua baris beraksen (kata-kata dengan tanda diakritik) seperti yang diharapkan dan sebaliknya

  5. Tidak dapat terhubung ke mongodb errno:61 Koneksi ditolak