Так что я привел к убеждению , что это наиболее эффективный способ получения автоматически сгенерированного значения идентификатора из базы данных с использованием JDBCTemplate:
KeyHolder keyHolder = new GeneratedKeyHolder();
jdbcTemplate.update(
new PreparedStatementCreator() {
public PreparedStatement createPreparedStatement(Connection connection) throws SQLException {
PreparedStatement ps =
connection.prepareStatement(INSERT_SQL, new String[] {"ID_FIELD"});
// Configure the PreparedStatement HERE!
return ps;
}
},
keyHolder);
Моя проблемачто я часто вставляю переменное число значений (JDBCTemplate.update(String, Object[])
на самом деле именно то, что мне нужно), и похоже, что PreparedStatement
позволяет вставлять по одному за раз (setString
и т. п.).Цикл по массиву кажется таким ... не элегантным.