Prima di refactoring, stavo inserendo una riga nel db utilizzando jdbcTemplate, preparedStatementCreator e un GeneratedKeyHolder per archiviare l'id generato della riga inserita.Non so come restituire il valore id della colonna generata utilizzando Spring jdbcTemplate e PreparedStatementSetter
jdbcTemplate.update(SomePreparedStatementCreator, generatedKeyHolder)
Tuttavia, Ora sto cercando di eseguire un aggiornamento usando il mio jdbcTemplate ma ora con un preparedStatementSetter. L'unico metodo che posso vedere per questo noi jdbcTemplate.update (String sql, PreparedStatementSetter) ma ora non sono sicuro di come restituire l'id della colonna generata.
PreparedStatementSetter pss = new PreparedStatementSetter() {
@Override
public void setValues(PreparedStatement preparedStatement)
throws SQLException {
preparedStatement.setString(1, pupil.getFirstname());
preparedStatement.setString(2, pupil.getSurname());
preparedStatement.setString(3, pupil.getGivenName());
preparedStatement.setDate(4, pupil.getDob());
}
};
jdbcTemplate.update("INSERT INTO STUDENTS "+ "(FIRSTNAME, SURNAME, GIVEN_NAME, DOB) VALUES (?,?,?,?)",pss);
Assumendo il mio approccio alla PreparedStatements è corretto, qualcuno sa come posso restituire il valore della id generato?
Grazie è molto! – PolyglotPiglet
@ user1724882 per favore considera di accettare questa risposta se è ciò di cui hai bisogno. – n1ckolas