本文主要介绍如何使用springTemplate 进行插入后返回id,同时介绍一下如何进行批量操作。
1、插入后返回id。
public int insertAndReturnKey(JdbcTemplate jdbcTemplate) {
String sql = "insert into student(name,age,address) values(?,?,?)";
KeyHolder keyHolder = new GeneratedKeyHolder();
jdbcTemplate.update(new PreparedStatementCreator() {
@Override
public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
PreparedStatement ps = connection.prepareStatement(sql);
ps.setString(1, "xiaoxiao");
ps.setInt(2, 12);
ps.setString(3, "dsjflkjekrj");
return ps;
}
}, keyHolder);
return keyHolder.getKey().intValue();
}
2、批量插入
public int[] batchInsert(JdbcTemplate jdbcTemplate) {
String sql = "insert into student(name,age,address) values(?,?,?)";
List<Object[]> params = new ArrayList<>();
params.add(new Object[]{"xiaosdf",12,"lkjljlkjl"});
params.add(new Object[]{"xiao3",33,"lkjljoijlkjllkjl"});
params.add(new Object[]{"23da3",33,"llkjklkjljlkjl"});
return jdbcTemplate.batchUpdate(sql, params);
}