春季 R2DBC DatabaseClient.asTL;DR一些背景知识
在我的spring-boot 2.3应用程序中,我有一个简单的数据方法,使用:DatabaseClient
fun getCurrentTime(): Mono<LocalDateTime> =
databaseClient
.execute("SELECT NOW()")
.asType<LocalDateTime>()
.fetch()
.first()
}
在 spring-boot 2.4(以及 spring 5.3 和 spring-data-r2dbc 1.2)中,spring-data-r2dbc 被弃用,取而代之的是 spring-r2dbc - 它具有不同的 API。org.springframework.data.r2dbc.core.DatabaseClient
org.springframework.r2dbc.core.DatabaseClient
适应这一点非常简单 - 除了kotlin扩展,它不是新的DatabaseClientExtensions的一部分。asType
fun getCurrentTime(): Mono<LocalDateTime> =
databaseClient
.sql("SELECT NOW()")
.map { row: Row ->
row.get(0, LocalDateTime::class.java)!!
}
.one()
这些扩展名是在其他地方,还是如何使用重新定义的类型参数进行转换?