Создание Денежного класса является способом пойти. Используя BigDecimal (или даже интервал) внизу. Тогда с помощью класса Валюты для определения округления соглашения.
, К сожалению, без Java перегрузки оператора делает его довольно неприятным созданием таких основных типов.
Несколько указателей:
Прежде чем вскочить на фургон Spring Batch, вы можете прочитать, что собственный cletus SO говорит о его недостатках:
http://www.cforcoding.com/ 2009/07/ spring-batch-or-how-not-to-design-api.html .
Недавно я оценил Spring Batch и быстро отклонил его, как только понял, что он ничего не добавил в мой проект, кроме раздувание и накладные расходы. Spring Batch может в конечном итоге стать нормальным продуктом (как и EJB на этот раз), но на данный момент он подозрительно выглядит как решение для поиска проблемы.
Я согласен с тем, что руководство пользователя очень запутанное (по крайней мере, по сравнению с руководством пользователя Spring Core). Он не позволяет адекватно устранить некоторые очень важные ошибки, с которыми вы столкнетесь в любом умеренно сложном пакетном сценарии.
Важными вещами, которые вы должны изучить как новичок и решить свои требования, являются
Однако стоит проявить настойчивость. Пакетное программирование сильно отличается от других стилей на стороне сервера и значительно выигрывает от обычного подхода Spring «абстракция паттернов».
Однако стоит проявить настойчивость. Пакетное программирование сильно отличается от других стилей на стороне сервера и значительно выигрывает от обычного подхода Spring «абстракция паттернов».
Однако стоит проявить настойчивость. Пакетное программирование сильно отличается от других стилей на стороне сервера и значительно выигрывает от обычного подхода Spring «абстракция шаблонов».
Я только начал рассматривать Spring Batch как возможную замену нашей внутренней структуре пакетной обработки. На самом деле создание пакетного сервера с возможностью планирования заданий и интерфейса JMX сверху для обзора запущенных / ранее запущенных экземпляров заданий заняло немногим больше суток. Однако, как и Caoilte, я нахожу проблемы с документацией. Главный из них, которого нет в документации или javadocs, - это то, какие таблицы требуются для JobRepository. По умолчанию используется JobRepository с сохранением базы данных, что является одним из требований моего нового сервера, но я не могу найти никаких упоминаний о необходимых таблицах. Мне приходилось искать в Google все упоминания о них (если они есть в документации, я с радостью добавлю соль в свой скромный пирог).
Я думаю, что на самом деле создание пакета для запуска в Spring Batch - довольно сложная задача, учитывая широкий спектр доступных вам параметров конфигурации. Это сила в моих глазах. Он предоставляет возможности для настройки сложных пакетных задач в xml, которые мне еще предстоит найти в какой-либо другой пакетной среде (о которой я знаю).Но если вы действительно не хотели использовать возможности Spring Batch, почему бы просто не создать задание с одним шагом тасклета (но тогда вы должны спросить себя, стоит ли оно накладных расходов).
Жаль, что вы, ребята, отказались от него, но фреймворк действительно отличный. Но если кому-то еще нужен быстрый старт, попробуйте: Spring Batch Quick Start
/ Анатолий
Недавно я действительно попробовал Spring Batch. Я скажу, что в своей реализации я использовал репозиторий в памяти (потому что перезапуски и повторные попытки не были приоритетом в обстоятельствах моего проекта), но я могу оценить то, что Ричард говорит о JobRepository: вам в основном нужно копать глубоко, чтобы найти схема базы данных.
Для Spring Batch 2.1 они предоставляют некоторую документацию по репозиторию: http://static.springsource.org/spring-batch/reference/html/metaDataSchema.html , включая обсуждение того, как иметь дело с реализациями, специфичными для базы данных. DDL для создания таблиц находится в основном JAR-файле Spring Batch:
spring-batch-core-2.1.0.RELEASE.jar: / org / springframework / batch / core / *. Sql
Скрипты присутствует для DB2, Derby, H2, HSQLDB, MySQL, Oracle 10g, PostgreSQL, MS SQL и Sybase.