Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs 菜单
Docs 主页
/ / /
Kotlin 协程
/

构建器

本部分包括有关如何使用每个可用构建器的指南,并演示了 MongoDB Kotlin 驱动程序构建器类提供的实用程序。

Kotlin 驱动程序提供了一些类来简化开发者使用 CRUD 操作和聚合 API 的流程。 静态实用程序方法可让您更有效地构建查询。

使用构建者类,您可以利用以下功能:

  • 用于在开发期间查找错误的 Kotlin 编译器和 IDE

  • 用于发现和代码完成的 IDE

使用构建器时,Kotlin 编译器和 IDE 会及早发现拼写错误的操作符等错误。 使用MongoDB shell或普通Kotlin时,您将操作符写入字符串,并且看不到问题的可视化指示,将这些错误推送到运行时而不是编译时。

使用构建器类,您可以将操作符编写为方法。IDE 会立即加下划线并在右侧显示一个红色条,表示出现问题。开发时,IDE 还会向您显示可以使用的方法。选择要使用的方法后,它会自动使用占位符参数来填充代码。

假设我们要使用以下条件向 userscollection中的所有用户发送一封市场营销电子邮件:

  • 性别为female的用户

  • 用户年龄早于 29

我们只需要他们的电子邮件地址,因此我们将确保查询不会返回我们支付带宽费用但并不需要的数据。

在我们的应用程序中, users集合中的文档使用以下数据类进行建模:

data class User(
@BsonId
val id: BsonObjectId = BsonObjectId(),
val gender: String,
val age: Int,
val email: String,
)
collection.find({ "gender": "female", "age" : { "$gt": 29 }}, { "_id": 0, "email": 1 })
data class Results(val email: String)
val filter = Document().append("gender", "female").append("age", Document().append("\$gt", 29))
val projection = Document().append("_id", 0).append("email", 1)
val results = collection.find<Results>(filter).projection(projection)
import com.mongodb.client.model.Filters
import com.mongodb.client.model.Projections
data class Results(val email: String)
val filter = Filters.and(Filters.eq(User::gender.name, "female"), Filters.gt(User::age.name, 29))
val projection = Projections.fields(Projections.excludeId(), Projections.include("email"))
val results = collection.find<Results>(filter).projection(projection)
  • Aggregates,用于构建聚合管道。

  • 用于构建查询筛选器的筛选器

  • 用于创建索引键的索引

  • 用于构建投影的投影

  • Sorts,用于构建排序条件。

  • 用于构建更新的更新

后退

复合运算符

在此页面上