我想知道如何在我的案例中正确使用 jdbc。
saveLinkHistory
列在 mysql 中是一个 bit(1) 类型。
public boolean getIsSavedLinkHistory(String name) {
String sql = "select saveLinkHistory from users where name = ?";
Boolean isTracked = jdbcTemplateObject.queryForObject(sql, new Object[] { name }, Boolean.class);
return isTracked;
}
查询运行良好,直到我收到错误 Incorrect result size: expected 1, actual 0
因为有时 name
不存在,queryForObject
方法期望我总是得到 1 行作为结果。
我该如何处理这种情况,只是抛出一个“名称”不存在的异常?
顺便说一下,Boolean
在这里可以吗?因为我以前没有看到这样的代码。
最佳答案
试试这个:
return DataAccessUtils.singleResult(jdbcTemplate.query(sql, new SingleColumnRowMapper<Boolean>(), param1, param2));
关于mysql - 如果 jdbc.queryForObject 不返回行,如何处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43066254/