Spring Batch идеально подходит для такого рода работ, потому что уменьшает деталей, которые вам нужны.В этом случае все, что вам нужно, - это массировать данные, а затем вставлять их в две разные таблицы.Вы можете прочитать данные, используя FileItemReader
.Затем используйте ItemProcessor
, чтобы изменить любые входящие данные и вывести правильные данные, правильно обработанные.Вы предоставляете itemProcessor
, поскольку это ваша пользовательская логика Java.Тогда вы можете использовать JdbcItemWriter
или просто подключить свой собственный.
Самое приятное в этом то, что это [a] супер обычное дело, так что есть много, много и много примеров (см .: Spring Batch 2.0 -Часть II - Плоский файл в базу данных или joshlong / joshlong-examples / spring-batch-starter или образцы из самой Spring Spring для вдохновения) и [b] это в основномдекларативный.Вам не нужно беспокоиться о вещах, которые вас не волнуют - вы не разбираетесь в том, как правильно анализировать файлы CSV или даже в том, как считывать файлы масштабируемым образом.Вы просто хотите убедиться, что данные действительны, и убедитесь, что они заканчиваются тем, что должны заканчиваться.