Struttura a molla persone attempted a solution a questo problema. Ma hanno abbandonato il tentativo quando è diventato evidente che non c'è modo di garantire che la soluzione funzioni con tutti i driver JDBC. Questo perché le specifiche JDBC non garantiscono che le chiavi generate saranno rese disponibili dopo un aggiornamento batch. I driver JDBC sono liberi di implementare questa funzionalità come meglio credono. In alcuni casi il database sottostante potrebbe non restituire i tasti generati rendendo impossibile per il driver supportare questa funzionalità.
Quindi, anche se si sta lavorando direttamente con JDBC, è necessario verificare se il database e il driver JDBC rendono disponibili le chiavi generate.
Mi ricordo che sono riuscito a ottenere questo risultato con il driver JDBC di MySQL 5.0 con qualche sforzo, ma non ho mai integrato la soluzione nella nostra applicazione di produzione, poiché abbiamo dovuto supportare anche le versioni precedenti di MySQL.
fonte
2011-07-03 08:22:54
Ho trovato la tua domanda perché sto cercando di fare la stessa cosa, ma il batchUpdate di primavera prende un BatchPreparedStatementSetter e non riesco a capire come fare a restituire le chiavi generate. Mi chiedo se in qualche modo devi farlo tu stesso usando le funzioni jdbc addBatch con le funzioni Spring jdbcTemplate. Hai trovato una risposta alla tua domanda? – titania424