Я сам не являюсь экспертом в Spring, Spring Batch или Spring Integration, но я могу рассказать вам о практической задаче, которую мне пришлось выполнить в своей организации, чтобы использовать все это по требованию.
Моя компания берет кредитную карту у наших клиентов, когда они регистрируются и списывают их каждые 30 дней.Поэтому каждый день мы должны видеть, кто на 30-й день, и автоматически возобновлять наш сервис для них, взимая с них плату.Поэтому мне приходится ежедневно отправлять данные в банки.
Шаг: 1 Мне пришлось написать программу для получения данных о кредитных картах клиентов, которые должны были быть получены в тот день из нашего обеспеченного банка.базы данных через пакетную программу и запишите это содержимое в определенном формате, который банк желает, во временное местоположение на сервере нашей компании в виде файла .txt (например: /user/someuser/endofdaytransaction/dd-mm-yyyy.txt)
Шаг: 2 Как только содержимое (dd-mm-yyyy.txt) будет доступно в этом каталоге (/ user / oneworld / endofdaytransaction /), я должен подключиться к банкуSFTP-сервер и перенесите файл в каталог, предоставленный нам банком.
Я использую Spring Batch для шага: 1, пакетное задание запускается через планировщик Quartz каждый день в 17:00, а Spring Integration для шага: от 2 допродолжайте опрашивать каталог, и как только файл будет найден, передайте его в банк.
Я также вижу из документов Spring, что я могу сделать гибрид этих технологий, т.е.избегайте записи во временный каталог и попросите Spring Integration напрямую записать на SFTP-сервер банка.
Другой практический пример, о котором я мог подумать: у меня есть AT & T и я подписался на Auto-pay, то есть они выставляют мне счета каждые 30 дней и поддерживают активную связь через Интернет и телефон.Я предоставил AT & T реквизиты своей банковской кредитной карты.Они объединяют все кредитные карты (подписчики) для выставления счетов и отправляют данные в VISA или MASTERCARD, которые необходимо выставлять в виде пакетного файла каждый день в определенное время.Я надеюсь, что вы можете относиться к шагу 1 и шагу 2, которые я упомянул.Счастливого обучения!