Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So erhalten Sie eine eingefügte ID mit Spring Jdbctemplate.update (String sql, obj ... args)

Betrachten Sie die Dokumentation für NamedParameterJdbcTemplate und JdbcTemplate Sie haben zwei Möglichkeiten:

Verwenden Sie NamedParameterJdbcTemplate 's update Methode.

Verwenden Sie JdbcTemplate 's update Methode.

Es sind auch einige andere Methoden verfügbar, die die Schlüssel für den angegebenen GenerierterKeyHolder , es liegt an Ihnen, welche Ihren Anforderungen entspricht.

BEARBEITEN

Für z.B. mit 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();