擴充套件

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 巧妙的型別推斷允許更短的語法。

Apache Cassandra 的 Spring Data 提供以下擴充套件

  • CassandraOperations(包括非同步和響應式變體)、CqlOperations(包括非同步和響應式變體)FluentCassandraOperationsReactiveFluentCassandraOperationsCriteriaQuery 的具體化泛型支援。

  • 協程 ReactiveFluentCassandraOperations 的擴充套件。

© . This site is unofficial and not affiliated with VMware.