Лучший ответ, который я бы предложил: не надо! SPQR сериализует все временные скаляры как строки ISO 8601 в зоне UTC по определенной причине. Это наиболее переносимый формат, который любой клиент может легко проанализировать и понять, а любую логику преобразования и отображения лучше оставить самому клиенту.
Если по какой-либо причине это невозможно (например, обратная совместимость с устаревшим клиентом), лучше всего предлагать собственные скалярные реализации. В будущем может быть возможность избежать этого, но в настоящее время вам нужно реализовать свои собственные скаляры и TypeMapper
, которые будут отображать нужные типы Java в эти скаляры. См. ScalarMapper
для вдохновения. Получив маппер, зарегистрируйте его через generator.withTypeMappers
.