Istnieje znacznie szybszy i lepszy sposób importowania danych bez ani jednej linii kodu Java. Tak jest z LOAD DATA INFILE
zauważ, że LOAD DATA może wykonać pewne wstępne przetwarzanie dla twojego CSV. Jednak w niektórych sytuacjach nie jest to wystarczające. Wtedy musiałbyś uzyskać pomoc od javy, ale java nie powinna robić wstawiania.
Twój kod Java powinien wstępnie przetworzyć plik CSV i wygenerować inny plik CSV, który można przekazać do funkcji LOAD DATA. 70000 rekordów to pestka.
LOAD DATA nie obsługuje ON DUPLICATE KEY UPDATE
składnia. Ale ma składnię REPLACE (która jest nieco wolniejsza niż aktualizacja zduplikowanych kluczy, ale nadal byłaby co najmniej o rząd wielkości szybsza niż to, co może dać java lub jakikolwiek inny język programowania).
Jeśli faktycznie aktualizacja ma znaczenie. ZAŁADUJ DANE do tabeli tymczasowej, a następnie do
INSERT INTO mytable SELECT * FROM temp_table ON DUPLICATE KEY ....