基于RowMapper的查询
new RowMapper() {
public User mapRow(ResultSet rs, int rowNum) throws SQLException {
Group g = new Group();
g.setId(rs.getInt("gid"));
g.setGroupName(rs.getString("groupname"));
User u = new User();
u.setId(rs.getInt("id"));
u.setUsername(rs.getString("username"));
u.setPassword(rs.getString("password"));
u.setNickname(rs.getString("nickname"));
u.setGroup(g);
return u;
}
我们可以将这段代码提取出来 , 作为一个静态内部类
在官网中的案例就是这么做的
public void query() {
String sql = "select count(*) from t_user";
int rowNum = jdbcTemplate.queryForObject(sql, null, Integer.class);
System.out.println("获取" + rowNum + "条");
}
获取某个字段, 返回的是一个列表
public void query() {
String sql = "select username from t_user";
List names = jdbcTemplate.queryForList(sql, String.class);
for (String name : names) {
System.out.println(name);
}
}
Batch operations with a List of objects,
NamedParameterJdbcTemplate