Instant
フィールドをシリアル化しようとすると、Jackson 2.8.3とjava 8を使用すると、ミリ秒ではなく秒としてシリアル化されているようです。Jacksonを使用してインスタントをミリ秒単位でシリアル化しますか?
これは、ジャクソンがDate
をシリアル化する方法とは異なり、ミリ秒単位でシリアル化されます。しかし、インスタントは数分でシリアル化されます。
私はこれをどのように変更できますか?また、Jacksonがunix epoch millisecondsのインスタントをシリアル化するようにするにはどうすればよいですか?
私は次のことをやっている:
mapper.enable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS);
mapper.enable(SerializationFeature.WRITE_DATE_KEYS_AS_TIMESTAMPS);
mapper.disable(SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS);
しかし、それは何の効果も持っていません。
jackson-datatype-jdk8依存関係を使用していますか? b/cこの依存関係には、Java 8のタイムクラスのためのセーラライザ/デラウェアが含まれています。 – Veeram
@Veeramいいえ、瞬時にデシリアライズしているようですが、わずか数秒です。その依存関係はミリ秒に変わるでしょうか? –
はい、そうですが、write_dates_as_timestampsのみが有効になっていることを確認してください。 – Veeram