Эти параметры должны помочь избежать дополнительного вызова БД для решения этой ситуации.
Вариант 1: Очень простой и требует наименьшего количества кода ... но работает, когда нет глобальной границы транзакции.
Просто включите все вставки, в случае любого исключения Constraint, просто перехватите его и ничего не делайте, вернитесь к другому значению
Вариант 2: Каждый раз, когда вы читаете строку из CSV,добавьте его в коллекцию, перед добавлением просто проверьте, существует ли объект уже (например: arrayList.contains (экземпляр объекта)) и продолжайте добавлять, только когда нет объекта с похожими данными).В конце сделайте объемную вставку.Примечание. Если данные большие, перейдите к фиксированному набору данных для массовой вставки.