对于最新的稳定版本,请使用 Spring Data Cassandra 4.5.0

扩展

Kotlin 扩展提供了使用其他功能扩展现有类的功能。Spring Data Kotlin API 使用这些扩展为现有 Spring API 添加新的特定于 Kotlin 的便利性。

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

例如,Kotlin 具体化类型参数为 JVM 泛型类型擦除提供了一种解决方法,而 Spring Data 提供了一些扩展来利用此功能。 这样可以提供更好的 Kotlin API。

要检索SWCharacter对象,您通常会编写以下内容:

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

使用 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()

与 Java 一样,characters在 Kotlin 中是强类型的,但 Kotlin 巧妙的类型推断允许使用更短的语法。

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

  • 具体化泛型支持CassandraOperations(包括 async 和 reactive 变体)、CqlOperations(包括 async 和 reactive 变体)FluentCassandraOperations,ReactiveFluentCassandraOperations,CriteriaQuery.

  • 的 Coroutines 扩展ReactiveFluentCassandraOperations.