ktm*_*124 8 java spring jdbctemplate
我正在使用JdbcTemplate.query(sql, args, rowMapper)方法调用来返回对象列表.在某些情况下,我想跳过一行,而不是将其添加到我返回的列表中.在这些情况下,我想到了两个解决方案:
我的问题是:当RowMapper.mapRow返回null时,JdbcTemplate是否将其添加到列表中?如果没有,我应该抛出SQLException吗?
这是将行添加到结果列表的代码段
public class RowMapperResultSetExtractor<T> implements ResultSetExtractor<List<T>> {
...
public List<T> extractData(ResultSet rs) throws SQLException {
List<T> results = (this.rowsExpected > 0 ? new ArrayList<T>(this.rowsExpected) : new ArrayList<T>());
int rowNum = 0;
while (rs.next()) {
results.add(this.rowMapper.mapRow(rs, rowNum++));
}
return results;
}
...
Run Code Online (Sandbox Code Playgroud)
我们可以看到它真的会添加null.但是,没有理由为什么RowMapper应该返回null,除非它有一个bug.
| 归档时间: |
|
| 查看次数: |
13897 次 |
| 最近记录: |