跳到主要内容

扩展

ChatGPT-4o-mini 中英对照 Extensions

Kotlin 扩展 提供了扩展现有类以增加额外功能的能力。Spring Data Kotlin API 使用这些扩展为现有 Spring API 添加新的 Kotlin 特定的便利功能。

备注

请记住,Kotlin 扩展需要导入才能使用。类似于静态导入,IDE 在大多数情况下应该会自动建议导入。

例如,Kotlin 的 reified 类型参数 提供了一种解决 JVM 泛型类型擦除 的方法,而 Spring Data 提供了一些扩展以利用这一特性。这使得 Kotlin API 更加优秀。

在 Java 中,若要检索 SWCharacter 对象的列表,通常会编写以下代码:

Flux<SWCharacter> characters = template.query(SWCharacter.class).inTable("star-wars").all()
java

使用 Kotlin 和 Spring Data 扩展,您可以改为编写以下内容:

val characters = template.query<SWCharacter>().inTable("star-wars").all()
// or (both are equivalent)
val characters : Flux<SWCharacter> = template.query().inTable("star-wars").all()
kotlin

与 Java 中一样,Kotlin 中的 characters 是强类型的,但 Kotlin 的巧妙类型推断使得语法更加简洁。

Spring Data for Apache Cassandra 提供以下扩展:

  • CassandraOperations(包括异步和反应式变体)、CqlOperations(包括异步和反应式变体)、FluentCassandraOperationsReactiveFluentCassandraOperationsCriteriaQuery 提供了具体化的泛型支持。

  • ReactiveFluentCassandraOperations 提供了 [kotlin.coroutines] 扩展。