此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Framework 6.2.0! |
扩展
Kotlin 扩展提供了 以使用其他功能扩展现有类。Spring 框架 Kotlin API 使用这些扩展为现有 Spring API 添加新的特定于 Kotlin 的便利性。
Spring 框架 KDoc API 列表 并记录了所有可用的 Kotlin 扩展和 DSL。
请记住,需要导入 Kotlin 扩展才能使用。这意味着,
例如,该GenericApplicationContext.registerBean Kotlin 扩展
仅在以下情况下可用org.springframework.context.support.registerBean 已导入。
也就是说,与静态导入类似,在大多数情况下,IDE 应该会自动建议导入。 |
例如,Kotlin 具体化类型参数为 JVM 泛型类型擦除提供了一种解决方法。
Spring Framework 提供了一些扩展来利用此功能。
这允许更好的 Kotlin APIRestTemplate
,对于新的WebClient
从 Spring 开始
WebFlux 和其他各种 API 的 API 的 API 中。
其他库(例如 Reactor 和 Spring Data)也提供 Kotlin 扩展 ,从而提供更好的整体 Kotlin 开发体验。 |
要检索User
对象,您通常会编写以下内容:
Flux<User> users = client.get().retrieve().bodyToFlux(User.class)
使用 Kotlin 和 Spring Framework 扩展,您可以改为编写以下内容:
val users = client.get().retrieve().bodyToFlux<User>()
// or (both are equivalent)
val users : Flux<User> = client.get().retrieve().bodyToFlux()
与 Java 一样,users
在 Kotlin 中是强类型的,但 Kotlin 巧妙的类型推断允许
以获得更短的语法。