Подтвердить что ты не робот

Как я могу начать с Spring Batch?

Я пытаюсь изучить Spring Пакет, но руководство по запуску очень сбивает с толку. Комментарии, похожие на

Вы можете получить довольно хорошее представление о как создать работу, изучив модульные тесты в org.springframework.batch.sample пакет (в src/main/java) и конфигурации в SRC/главная/ресурсы/рабочих мест.

не совсем полезны. Также я считаю пример проекта очень сложным (17 непустых пространств имен с 109 классами)! Есть ли более простое место для начала работы с Spring Batch?

4b9b3361

Ответ 2

Я согласен с тем, что руководство пользователя очень запутанно (по сравнению с руководством пользователя Spring Core в любом случае). Он не адекватно рассматривает некоторые очень важные ошибки, с которыми вы столкнетесь в любом среднесрочном пакетном сценарии.

Важные вещи, которые вы должны развернуть в качестве нового стартера, и принять решение о ваших требованиях,

  • конфигурация исключений (когда пропустить, когда сбой, когда нужно повторить попытку)
  • использование контекста выполнения для поддержания состояния (например, когда использовать контекст выполнения сценария и контекст выполнения задания).
  • общее обслуживание состояния (используйте область шага, особенно для входных параметров)

Однако стоит настойчиво. Пакетное программирование очень отличается от других стилей на стороне сервера и значительно выигрывает от обычного подхода Spring "абстракция рисунка".

Ответ 3

Недавно я дал Spring Batch реальную попытку. Я скажу, что в своей реализации я использовал репозиторий в памяти (потому что перезагрузки и повторные попытки не были приоритетом в моем проекте), но я могу оценить то, что Ричард говорит о JobRepository: вам в основном приходится копать глубоко, чтобы найти схемы базы данных.

Для Spring Batch 2.1 они предоставляют некоторую документацию в репозитории: http://static.springsource.org/spring-batch/reference/html/metaDataSchema.html, включая дискуссии о том, как обращаться с базой данных -специфические реализации. DDL для создания таблиц находится в основном файле Spring Batch JAR:

spring -batch-ядро-2.1.0.RELEASE.jar:./Орг/springframework/партии/ядро ​​/SQL *

Сценарии присутствуют для DB2, Derby, H2, HSQLDB, MySQL, Oracle 10g, PostgreSQL, MS SQL и Sybase.

Ответ 4

Прежде чем вы перейдете на Spring пакетный универсал, вы можете прочитать, что должен сказать собственный пользователь cletus о его недостатках:

http://www.cforcoding.com/2009/07/spring-batch-or-how-not-to-design-api.html.

Недавно я оценил пакет Spring и быстро отклонил его, когда понял, что он ничего не добавляет к моему проекту, кроме раздувания и накладных расходов. Spring Пакет в конечном итоге может стать продуктом OK (так же, как EJB получил это право на этот раз), но на данный момент он выглядит подозрительно, как решение в поисках проблемы.

Ответ 5

В этом уроке мы создадим простое пакетное приложение Spring, чтобы продемонстрировать, как обрабатывать серию заданий, в которых основной целью является импорт списков записей с разделителями-запятыми и фиксированной длины. Кроме того, мы добавим веб-интерфейс с помощью Spring MVC, чтобы научить, как запускать задания вручную, и чтобы мы могли визуально проверять импортированные записи. В слое данных мы будем использовать JPA, Hibernate и MySQL.

Ответ 7

Я только начал рассматривать Spring Batch как возможную замену нашей внутренней пакетной структуре. Фактически создание пакетного сервера с возможностью расписания Джобса и интерфейса JMX сверху, чтобы обеспечить обзор запущенных/ранее запущенных экземпляров заданий, заняло не более одного дня. Однако, как и у Caoilte, я затрудняюсь с документацией. Основной и тот, который отсутствует в документации или javadocs, - это то, что таблицы требуются JobRepository. По умолчанию используется ресурс JobRepository на основе базы данных, который является одним из требований моего нового сервера, но я не могу найти упоминания о необходимых таблицах. Мне приходилось искать Google в высоком и низком состоянии для любого упоминания о них (если они находятся в документации, то я с удовольствием поместил соль на свой скромный пирог).

Я думаю, что на самом деле создание пакета для работы в Spring Пакет - довольно сложная задача, учитывая широкий набор доступных вам параметров конфигурации. Это сила в моих глазах. Он предоставляет возможности для настройки сложных пакетных задач в xml, которые мне еще предстоит найти в любой другой пакетной структуре (что я знаю). Но если вы действительно не хотели использовать мощь Spring Batch, почему бы просто не создать работу с помощью одного шага тарелки (но тогда вы должны спросить себя, стоит ли это накладные расходы).

Ответ 8

Слишком плохо, что вы, ребята, отказались от него, на самом деле структура действительно отличная. Но если кому-то еще нужно быстро начать, попробуйте: Spring Быстрый старт

/Анатолий