@Autowired
lateinit var jdbcTemplate: JdbcTemplate
val empRowMapper: RowMapper<Employee> = RowMapper { rs, _ ->
Employee(rs.getInt("id"), rs.getString("name")) }
fun findEmployeeById(empNumber: Int): Employee? {
val employees = jdbcTemplate.query<Employee>(""" select id
, name
from employees
where id = :empNumber
""", empRowMapper, empNumber)
return employees.firstOrNull()
}
数据类:
data class Employee(val employeeNumber: Int, val name: String)
@Autowired
lateinit var jdbcTemplate: JdbcTemplate
fun findEmployeeById(empNumber: Int): String? {
return jdbcTemplate.queryForObject("select name from employees where id = ?", String::class.java, empNumber)
}
2条答案
按热度按时间uqdfh47h1#
我像这样解决了它-但是使用jdbc模板。例程可以处理多行,也可以管理一个空的结果集。
数据类:
即使你只需要一个字符串,我也会使用对象。对于对象,代码更容易扩展。对于Kotlin来说,这也不是什么大问题。
6tqwzwtp2#
虽然你自己的答案解决了你的问题,但问题中提出的问题可以更简单地解决。