跳到主要内容
版本:5.1.1

扩展

Doubao 中英对照 Extensions

Kotlin 扩展 提供了为现有类追加额外功能的能力。Spring Data 的 Kotlin API 使用这些扩展,为现有的 Spring API 增添 Kotlin 特有的便捷用法。

备注

请记住,Kotlin 扩展需要导入后才能使用。与静态导入类似,在大多数情况下 IDE 应会自动提示相应的导入。

例如,Kotlin 具体化类型参数为 JVM 的泛型类型擦除提供了一种变通方案,而 Spring Data 提供了一些扩展以利用这一特性。这使得 Kotlin API 更加完善。

要用 Java 获取 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 中一样,Kotlin 中的 characters 也是强类型的,但 Kotlin 巧妙的类型推断允许使用更简短的语法。

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

  • 为 CassandraOperations(包括异步和响应式变体)、CqlOperations(包括异步和响应式变体)FluentCassandraOperations、ReactiveFluentCassandraOperations、Criteria 和 Query 提供具体化泛型支持。

  • 为 ReactiveFluentCassandraOperations 提供协程扩展。