Med PostgreSQL kan du göra det via nyckelordet RETURNING:
PostgresSQL - ÅTERKOMMANDE
INSERT INTO mytable( field_1, field_2,... )
VALUES ( value_1, value_2 ) RETURNING anyfield
Det kommer att returnera värdet på "anyfield". "anyfield" kan vara en sekvens eller inte.
För att använda den med JDBC, gör:
ResultSet rs = statement.executeQuery("INSERT ... RETURNING ID");
rs.next();
rs.getInt(1);