java - jdbcTemplate#query 只返回第一行而不是全部
问题描述
我的应用程序中有以下代码,出于某种原因,rowMapper ( rs.toWord()
) 仅使用第一个 id 调用一次,而其他的则被忽略。
如果我使用 mysql 客户端手动运行查询,它会完美运行。我仔细检查并正确生成了 namedParameters。
您知道为什么查询不会返回所有结果吗?
val sql = "SELECT * FROM words WHERE id IN (:wordsInSentence)"
val namedParameters = mapOf("wordsInSentence" to wordsInSentence.joinToString(separator = ","))
val words = jdbcTemplate.query(sql, namedParameters) { rs: ResultSet, _ ->
rs.toWord()
}
解决方案
推荐阅读
- indexing - 在 Acumatica 中恢复快照会禁用某些索引
- android - 安卓。活动暂停或完成后如何停止活动中的所有侦听器?(无侦听器参考)
- c++ - 将字符串分配给类的实例(重载 = )?
- javascript - 通过 javascript 处理特定的图像响应
- html - HTML表格,标题是属性列标识符吗?
- python-2.7 - For 循环失败,但代码似乎是正确的
- bash - Bash 脚本案例无法正确评估条件
- google-chrome - Chrome 69.0.3497.100 中的 CORS 问题
- powershell - Powershell 脚本 - 使用 InterfaceDescription 更改 IP
- scala - 将列附加到 HDFS 中的现有 CSV 文件