No estoy seguro de que esta sea una forma de hacerlo con addBatch
excepto en la forma en que lo está utilizando. Otra cosa que puede intentar es abandonar el addBatch()
e intente desactivar la confirmación automática en su lugar. Luego puede usar stmt.getGeneratedKeys();
. Algo como:
connection.setAutoCommit(false);
stmt.executeUpdate("insert into table1(\"id_auto_generated\", \"foo\") ...");
DatabaseResults results = stmt.getGeneratedKeys();
// extract the id from the results
stmt.executeUpdate("insert into table2(\"table1_id\", \"boo\") ...");
... many more stmts here
connection.commit();
connection.setAutoCommit(true);
Espero que esto ayude.