Comment puis-je obtenir l'ID auto-incrémenté lorsque j'insère un enregistrement dans une table via jdbctemplate
private void insertIntoMyTable (Myclass m) {
String query = "INSERT INTO MYTABLE (NAME) VALUES (?)";
jdbcTemplate.update(query, m.getName());
}
Lorsque la requête ci-dessus insère un enregistrement, le ID
colonne dans la table autoincrements.
Est-il un moyen d'obtenir cette auto incrémenté ID arrière au moment de l'insertion. Donc, dans cet exemple, la valeur de retour de ma méthode serait int
source d'informationauteur birdy
Vous devez vous connecter pour publier un commentaire.
Vérifier cette référence. Vous pouvez utiliser jdbcTemplate.mise à jour:
MODIFIER
Ajoutée importations comme demandé
voici le code d'utilisation:
- Je obtenir de l'identifiant généré par la base de données (MSSQL) après l'insérer comme ci-dessous, les importations:
et l'extrait de code:
JdbcTemplate est au cœur du Printemps. Une autre option est d'utiliser SimpleJdbcInsert.
Vous pouvez toujours @Autowire jdbcTemplate. Pour moi, c'est plus pratique que de travailler avec jdbcTemplate.méthode update() et porte-clés pour obtenir l'id correspondant.
Exemple d'extrait de code est testé avec Apache Derby et devrait travailler avec les bases de données d'habitude.
Utilisation de Spring JPA est une autre option si l'ORM est fait pour vous.