mongo 客户
mongo客户端用于直接访问 App Service 的数据源,无需同步支持。
此 API 对应于 Atlas App Service“MongoDB API”。 有关方法和参数的详细说明,请参阅MongoDB API 参考文档。
与 EJSON 之间的序列化是使用 KBSON 执行的, KBSON支持Kotlin 序列化框架,并处理与标记有Serializable的类之间的序列化。 可以通过自定义传递给各种 、 MongoDatabaseEJSON 和 MongoCollection 工厂方法的 EJSON 序列化器来自定义序列化。
对象引用(链接)仅通过其主键进行序列化,因此要序列化 Realm 对象( RealmObject 、 EmbeddedRealmObject 和 AsymmetricRealmObject )发往和接收的 MongoDB API 请求和响应,序列化框架必须为这些对象配置特殊的序列化器。 这可以通过以下方式完成:
val user = app.currentUser
val client = user.mongoClient(
"serviceName",
EJson(
serializersModule = realmSerializerModule(
setOf(
MongoDBCollectionDataType1::class,
MongoDBCollectionDataType2::class
)
)
)
注意由于 MongoDB API 响应仅包含链接的主键信息,因此将响应序列化为 Realm 对象( RealmObject 、 EmbeddedRealmObject 和 AsymmetricRealmObject )将创建仅设置了主键属性的目标对象的实例。 Realm 对象的所有其他属性都将具有类定义中指定的默认值。
注意:EJSON 序列化器需要选择加入实验性“实验性” ExperimentalKBsonSerializerApi 。
属性
MongoClient正在连接的数据源的名称。
功能
获取一个MongoCollection ,该集合公开从模式类型为T的远程对象集合中检索和更新数据的方法。
获取MongoDatabase对象以访问数据源远程集合中的数据。