iXtends Geschrieben 29. April 2009 Geschrieben 29. April 2009 Hallo, ich habe eine Frage bezüglich des Spring Frameworks. Ich lasse jegliche Datenbankzugriffe über Spring laufen. Jetzt habe ich folgendes Problem. Ich möchte einen neuen Datensatz zu einer Tabelle hinzufügen, die ID des Datensatzes wird von MySQL per Auto increment automatisch hinzugefügt. Ich benötige aber die ID um mit ihr weiter zu arbeiten. Hier mal der Ausschnitt aus der Methode die ich benutze: JdbcTemplate jdbcTemplate = new JdbcTemplate((DataSource) context.getBean("DataSource")); this.log.info(user.toString()); int rows = jdbcTemplate.update( "INSERT INTO user (nickname, password, firstname, name, zip, street, title) VALUES(?, ?, ?, ?, ?, ?, ?);", new Object[] { user.getName(), passwordEncrypter.encryptPassword(user.getPassword()), user.getFirstname(), user.getName(), user.getZip(), user.getStreet(), user.getTitle() }); Das "normale" java.sql.Statement hat eine Methode "getGeneratedKeys". Diese finde ich bei Spring aber nicht. Gibt es eine Möglichkeit an diese generierte ID zu kommen? Vielen Dank Zitieren
Dragon8 Geschrieben 29. April 2009 Geschrieben 29. April 2009 Es gibt von MySQL aus die Möglichkeit an die zuletzt erzeugte ID zu kommen. Das funktioniert mit der Methode LAST_INSERT_ID() Zitieren
DominikJ Geschrieben 29. April 2009 Geschrieben 29. April 2009 Da habe ich gelesen, das es zu Problemen kommt da die Verbindung dann schon gesclossen ist. Spring Community Forums - View Single Post - Get last inserted id sollte aber klappen? Zitieren
iXtends Geschrieben 29. April 2009 Autor Geschrieben 29. April 2009 Ich werds mir mal anschauen. Aber schade, dass die Methode nicht einfach die ID zurückgibt^^ Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.