Я обновляю загрузчик данных, который читает из плоского файла и пакетной вставки, используя jdbctemplate для каждых 500 элементов. Я использую фиксированный пул потоков Java Executor, который представляет задачи, которые читают каждый файл и batchupdate. Например, если при чтении первого файла происходит сбой во время 3-й пакетной вставки, все предыдущие пакетные операции для этого файла необходимо откатить. Задача должна продолжить со следующего файла и создать новую транзакцию для вставки. Мне нужен код, который может сделать это. В настоящее время я использую транзакцию шаблонов и упаковываю код пакетной вставки внутри doInTransactionwithoutcallback
и во время исключения в блоке catch, вызывающем транзакцию status.setrollbackonly. Но мне нужен код, который может создать новую транзакцию для следующего файла, независимо от того, был ли последний файл неудачным или преуспел. Настройка распространения требует нового, решает его?