Affects: 5.3.2
JdbcOperationsExtensions passes kotlin Array to Java varargs, so Array of array is passed to database, and fails.
inline fun <reified T> JdbcOperations.queryForObject(sql: String, args: Array<out Any>): T? =
queryForObject(sql, T::class.java, args) as T
should be
inline fun <reified T> JdbcOperations.queryForObject(sql: String, args: Array<out Any>): T? =
queryForObject(sql, T::class.java, *args) as T
And, JdbcOperations.queryForList(sql: String, args: Array<out Any>): List<T>
has the same problem.
https://github.com/spring-projects/spring-framework/blob/v5.3.2/spring-jdbc/src/main/kotlin/org/springframework/jdbc/core/JdbcOperationsExtensions.kt#L89-L90J