Examinando a documentação para NamedParameterJdbcTemplate e JdbcTemplate Você tem duas opções:
use
NamedParameterJdbcTemplate
atualizar
método. use
JdbcTemplate
atualizar
método. Há também alguns outros métodos disponíveis que preencherão as chaves para o GeneratedKeyHolder , cabe a você qual atende às suas necessidades.
EDITAR
Por exemplo usando 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();