У меня есть программа Spring Batch, которая считывает данные из БД, обрабатывает их и вставляет (используя ItemWriter) в другую таблицу в базе данных.Здесь я использую кучу SQL-запросов для ItemReader, ItemProcessor и ItemWriter.
Мое требование - хранить все эти запросы в таблице с форматом параметров и значений, получать их одним вызовом БД и передавать их ItemReader.или ItemProcessor или ItemrWriter.Так что, если в будущем произойдут какие-либо изменения в запросах, мы в конечном итоге будем выполнять только обновления БД, и код останется нетронутым.
Я пытался сделать это в разделе beforeJob, но столкнулся с ошибкой, говоря: «Java.lang.IllegalArgumentException: SQL-запрос должен быть предоставлен ".Но я могу сделать это успешно, сделав вызов БД внутри метода ItemReader.Я пытаюсь избежать такого подхода, потому что мне нужно сделать вызов БД для каждого ItemReader, ItemProcessor и ItemWriter.Пожалуйста, дайте мне знать, как этого добиться?