Casbah Scala MongoDB驱动程序 - 嵌入式对象

non*_*com 6 scala mongodb casbah

我知道MongoDB中的对象可以包含多个级别的数据(就像JSON对象的方式一样).但是,Casbah驱动程序教程仅涵盖"平面"对象的创建,其中只有一个级别的数据.如何使用Casbah创建和处理多级对象?

om-*_*nom 9

它非常直观.

施工:

val a: MongoDBOBject = DBObject("a" -> DBObject("b" -> "c"))
// results in { "a" : { "b" : "c"}}
Run Code Online (Sandbox Code Playgroud)

使用点表示法访问内部字段:

val c = a.expand[String]("a.b")
Run Code Online (Sandbox Code Playgroud)

将内部对象检索为DBObject,因此您可以使用它与父对象进行相同的操作:

val b = a.as[DBObject]("a")
Run Code Online (Sandbox Code Playgroud)

  • 注意:为此,请记住导入com.mongodb.casbah.commons.MongoDBObject,com.mongodb.casbah.commons.BaseImports._,com.mongodb.casbah.Implicits ._和com.mongodb.DBObject. (3认同)