Я идентифицирую файл в папке, выбираю файл и считываю файл, используя BufferedReader, читаю построчно и преобразую эту строку в объект ArrayList (это занимает много времени, так какпятьдесят столбцов) и готовит подготовленное заявление и добавляет его в пакет, как только я добавляю 4000 записей в пакет, мы фиксируем данные в таблице. Все это занимает много времени, так как это чтение из файла и вставка его вТаблица, я следовал следующему подходу: 1) Переберите каждую строку в файле и поместите каждую строку как строковый объект в список (предположим, что размер списка составляет 93000).2) разбить список на подсписки (каждый размер подсписка 4000), это означает, что мы получаем 24 подсписка.3) Я создал потоки, используя Callable Interface вместе с Executor Framework.4) я передаю каждый подсписок в один поток, это означает, что в моем случае это 24 потока.5) каждый поток преобразует каждый объект String в подсписке в подготовленный оператор и добавляет его в пакет и фиксирует после добавления 4000 тыс. Записей.
проблема:
при загрузке файла, иногданекоторые записи не загружаются, а некоторые записи правильно загружаются в таблицу.-> когда я запускаю его несколько раз, иногда пропускаются только 5 записей, иногда 1000, иногда 3230 записей, иногда 100% загружаются правильно.-> Может кто-нибудь, пожалуйста, помогите мне понять, почему это показывает такое поведение.