En regardant la documentation pour NamedParameterJdbcTemplate et JdbcTemplate Vous avez deux choix :
utilisez NamedParameterJdbcTemplate
mise à jour
méthode.
utiliser JdbcTemplate
est mise à jour
méthode.
Il existe également d'autres méthodes disponibles qui rempliront les clés du GeneratedKeyHolder , c'est à vous de décider lequel correspond à vos besoins.
MODIFIER
Par ex. en utilisant JdbcTemplate :
GeneratedKeyHolder holder = new GeneratedKeyHolder();
jdbcTemplate.update(new PreparedStatementCreator() {
@Override
public PreparedStatement createPreparedStatement(Connection con) throws SQLException {
PreparedStatement statement = con.prepareStatement("INSERT INTO SOME_TABLE(NAME, VALUE) VALUES (?, ?) ", Statement.RETURN_GENERATED_KEYS);
statement.setString(1, "SomeName");
statement.setString(2, "SomeValue");
return statement;
}
}, holder);
long primaryKey = holder.getKey().longValue();