mongo고객

인터페이스 몽고클라이언트

mongo 클라이언트 는 동기화 지원 없이 App Service의 데이터 소스에 직접 액세스하는 데 사용됩니다.

이 API는 Atlas App Service 'MongoDB API'에 해당합니다. 메서드 및 인수에 대한 자세한 설명은 MongoDB API 참조 를 참조하세요.

EJSON과의 직렬화는 코틀린( Kotlin) 직렬화 프레임워크 를 지원하고 직렬화 가능( Serializable )으로 표시된 클래스와의 직렬화를 처리하는 KBSON 을 사용하여 수행됩니다. 다양한 MongoClient, MongoDatabase EJSONMongoCollection 팩토리메서드에 전달된 직렬 변환기를 사용자 지정하여 직렬화를 사용자 지정할 수 있습니다.

객체 참조(링크)는 프라이머리 키에 의해서만 직렬화되므로 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 가 연결 중인 데이터 소스의 이름입니다.

함수

클립보드에 링크 복사됨
@실험적KBsonSerializerApi
인라인 fun <t : BaseRealmObject> 몽고클라이언트.컬렉션(EJSON: EJSON? = null): MongoCollection<t>

스키마 유형 T 의 원격 객체 컬렉션에서 데이터를 검색하고 업데이트하는 메서드를 노출하는 MongoCollection 을 가져옵니다.

클립보드에 링크 복사됨
@실험적KBsonSerializerApi
추상 fun database(databaseName: string, EJSON: EJSON? = null): MongoDatabase

데이터 소스의 원격 컬렉션에서 데이터에 액세스하려면 MongoDatabase 객체를 가져옵니다.