En primer lugar, ¿está seguro de que necesita toda la tabla en la memoria? Tal vez debería considerar (si es posible) seleccionar las filas que desea actualizar/fusionar/etc. Si realmente necesita tener la tabla completa, podría considerar usar un ResultSet desplazable. Puedes crearlo así.
// make sure autocommit is off (postgres)
con.setAutoCommit(false);
Statement stmt = con.createStatement(
ResultSet.TYPE_SCROLL_INSENSITIVE, //or ResultSet.TYPE_FORWARD_ONLY
ResultSet.CONCUR_READ_ONLY);
ResultSet srs = stmt.executeQuery("select * from ...");
Le permite moverse a cualquier fila que desee utilizando métodos 'absolutos' y 'relativos'.