У меня есть служба API для отдыха Spring Boot, которая возвращает объект Java в своем ответе, который переводится в json.
Одним из свойств объекта Java является «Java.time.Instant». Как мне перевести это для возвращаемого объекта json?
Обновить
Я пытался использовать @JsonFormat, но это не работает...
Возвращаемый объект Java имеет свойство Instant...
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="yyyy-MM-dd'T'HH:mm:ss.SSSZ",timezone = "UTC")
public Instant getRequested() {
return Requested;
}
Это возвращается в теле ответа json как...
"requested": {
"epochSecond": 1499342121,
"nano": 868000000
},
Я использую Spring Boot 1.5.4.
метод управления - это...
@RequestMapping(value="/", method= RequestMethod.POST)
public AcceptedAccountRequest newRequest(@RequestBody NewAccountRequest aRequest) {
AcceptedAccountRequest anAcceptedRequest = createAccepted(aRequest);
return anAcceptedRequest;
}
.toEpochMilli
который получает длинное значение. Затем вернуть его обратно в Instant проще с помощью.ofEpochMilli
- person KarelG   schedule 06.07.2017java.time.Instant
имеет строковое представление ISO-8601, быстрый взгляд на Документация по API также раскрыла бы это, так что пока вы не используете какую-то странную сериализацию на основе отражения, все в порядке. Пожалуйста, используйте Google. - person specializt   schedule 06.07.2017