В Spring Batch параметры задания преобразуются из строк в объявленный тип с помощью JobParametersConverter. Реализация по умолчанию включает в себя (Spring Core) ConversionService, который фактически преобразует переданные аргументы.
DefaultConversionService не подходит для моих нужд (используются разные форматы). , поэтому я использую собственный JobParametersConverter, который обертывает GenericConversionService, и регистрирую только необходимые пользовательские преобразователи (например, собственный преобразователь строк в дату).
Таким образом я потерял некоторые конвертеры, например StringToArrayConverter, который чрезвычайно удобен для передачи в Spring Batch списков, разделенных запятыми, так как тип элемента закодирован в имени класса (например, можно передать задание параметр с типом [Ljava.util.Date;).
К сожалению, StringToArrayConverter защищен пакетом, и единственный способ не переопределять его — зарегистрировать его через DefaultConversionService::addCollectionConverters, но этот метод также добавляет несколько других преобразователей.
Есть ли причина для такого выбора видимости?
Подробнее здесь: https://stackoverflow.com/questions/787 ... -protected
Почему пакет конвертеров Spring защищен? ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение