Spring Boot Jackson и сериализация данных

В моем приложении Spring Boot я использую следующий DTO с @RestController:

public abstract class ComparableQuery extends BaseQuery {

    private final Object value;

...

}

Все работает нормально, но когда я использую Spring RestTemplate и передаю java.util.Date как ComparableQuery.value, я вижу, что Джексон сериализует объект даты в следующий «магический» номер:

"value":1009836000000

Прямо сейчас я не понимаю, как объект даты сериализуется в представление числа 1009836000000 и как его эмулировать, когда я использую, например, AngularJS в качестве клиента моего внутреннего API. Пожалуйста, порекомендуйте.


person alexanoid    schedule 13.04.2017    source источник
comment
Я думаю, что это значение вашего финика и оно представлено в лонг. Вы можете получить это значение и отформатировать его, используя simpledateformat или что-нибудь, эквивалентное желаемому формату.   -  person CrazyMac    schedule 13.04.2017
comment
Как подготовить это значение, например, в AngularJS?   -  person alexanoid    schedule 13.04.2017
comment
помогает это свойство? spring.jackson.date-format=yyyy-MM-dd'T'HH:mm:ss.SSSZ   -  person Patrick    schedule 13.04.2017
comment
Хороший вопрос, мне тоже нужен ответ   -  person strash    schedule 13.04.2017


Ответы (1)


Это очень похожая проблема, описанная в этом ответе о null обработке с помощью jackson и spring boot.

Соответствующая конфигурация для форматирования даты в application.properties должна выглядеть так:

spring.jackson.write-dates-as-timestamps=false
person Jörn Horstmann    schedule 13.04.2017