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

Cara melintasi objek Groovy dengan titik dalam string menggunakan GPath

Berdasarkan bug/utas, akan muncul beberapa masalah ambiguitas dengan mendukung pengakses properti bertitik. Berdasarkan utas milis, tampaknya mengevaluasi string queryField akan menjadi pilihan terbaik Anda:

def result = [a: [b: [c: 42]]]
def queryString = 'a.b.c'

def evalResult = Eval.x(result, 'x.' + queryString)
assert evalResult == 42

Skrip di Konsol Web Groovy

Utas milis agak lama, jadi ada kelas Eval baru (setidaknya 1.7.2) yang dapat membantu menjalankan cuplikan kecil yang tidak memiliki ikatan besar.

Jika tidak, Anda dapat membagi string dan melakukan evaluasi properti secara rekursif pada objek, yang secara efektif mereproduksi subset perilaku traversal GPath.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Bagaimana cara menggunakan MongoDB dengan janji di Node.js?

  2. bidang _id khusus Django MongoDB MongoEngine

  3. Mongo dan temukan selalu terbatas pada 100 dengan data geografis

  4. Mengapa saya mendapatkan luwak.koneksi tidak berfungsi saat mencoba terhubung dengan luwak?

  5. Manipulasi Data Agregasi MongoDb - Objek ke Array