Mysql
 sql >> Database >  >> RDS >> Mysql

Come ottenere l'ID inserito utilizzando Spring Jdbctemplate.update(String sql, obj...args)

Esaminando la documentazione per NamedParameterJdbcTemplate e JdbcTemplate Hai due scelte:

usa NamedParameterJdbcTemplate aggiornamento metodo.

usa JdbcTemplate aggiornamento metodo.

Sono disponibili anche altri metodi che popoleranno le chiavi del GeneratedKeyHolder , sta a te scegliere quale si adatta alle tue esigenze.

MODIFICA

Per es. utilizzando 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();