La forma más rápida de realizar una inserción masiva desde un archivo CSV en PostgreSQL es con Copiar . El comando COPY está optimizado para insertar un gran número de filas.
Con Java puede usar la Implementación de copia para el controlador PostgreSQL JDBC
Hay un buen ejemplo pequeño de cómo usarlo aquí:¿cómo copiar datos de un archivo a PostgreSQL usando JDBC?
Si tiene un CSV con encabezados, querrá ejecutar un comando similar a este:
\COPY mytable FROM '/tmp/mydata.csv' DELIMITER ';' CSV HEADER
Otro aumento de rendimiento cuando agrega grandes cantidades de datos a una tabla existente es eliminar los índices, insertar los datos y luego volver a crear los índices.