日期:2014-05-16 浏览次数:20475 次
RowCallBackHandler 是 JdbcTemplate 的 query 方法中用到的一个接口。
接口,基于每一行,用来处理ResultSet结果集的行。
它只有一个方法:
?
void processRow(ResultSet rs) throws SQLException;
?如果自己要实现这个方法,就要做到处理ResultSet结果集中的每行的数据,你不能在方法中再去调用next()方法,而应该只是提取当前行的数据。
?
例如:
@Override public User findUserByName(final String userName) { String sql = "SELECT * FROM t_user WHERE user_name=?"; final User user = new User(); jdbcTemplate.query(sql, new Object[]{userName}, new RowCallbackHandler(){ @Override public void processRow(ResultSet rst) throws SQLException { user.setUserId(rst.getInt("user_id")); user.setUserName(userName); user.setPassword(rst.getString("password")); } }); return user; }
?遗留问题:javap -c