по вашему требованию вы можете использовать пользовательский считыватель элементов, например
public class MyItemReader implements ItemReader<MyDTO> {
@Override
public MyDTO read() throws Exception {
MyDTO myDto = null;
/*
your custom code
*/
return myDto;
}
}
Но лучший подход в соответствии со структурой пакета Sprig будет
Таким образом, вы можете обрабатывать свою логику в процессоре, в процессоре вы можете сравнивать данные с oracle,
Шаг 1. Список из таблицы MySQL - будет обрабатываться в весеннем пакетном ридере
Шаг 2. Сравните T из Oracle со списком (шаг 1), используя первичный ключ ex: id.- будет обработан в процессоре
для увеличения производительности, я бы посоветовал вам использовать некоторый кеш, если данные оракула не слишком велики.Если данные oracle велики, вы можете просто найти данные на базе Oracle в вашем процессоре