2016-12-21 7 views
0

私はjackson-datatype-jsr310を使用してJava 8時間データ型をサポートしています。LocalDateTimeがタイムスタンプとしてシリアル化されていません

私はこのようなObjectMapperを作成しました。その後、私はここで[2016,12,21,15,53,57,178]ない1482306837178

を得た

ObjectMapper objectMapper = new ObjectMapper(); 
objectMapper.configure(SerializationFeature.WRITE_DATE_TIMESTAMPS_AS_NANOSECONDS, false); 
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, true); 
objectMapper.registerModule(new JavaTimeModule()); 

Foo foo = new Foo(); 
LocalDateTime t = LocalDateTime.now(); 
foo.setT1(Date.from(t.toInstant(ZoneOffset.UTC))); 
foo.setT2(Timestamp.valueOf(t)); 
foo.setT3(t); 

System.out.println(objectMapper.writeValueAsString(foo)); 

とのLocalDateTimeを解析されたが、私のテストモデルクラスはFoo

public class Foo { 

    private Date t1; 

    private Timestamp t2; 

    private LocalDateTime t3; 

    // Getters & Setters 
} 

である私は質問を参照してくださいJackson Java 8 DateTime serialisationと問題の所有者は1421261297.356000000のようなシリアライズされた文字列を取得します。私はそれを得る方法を知らなかった。私はdatatype-jsr310と同じjackson 2.8.5を使用しています。ジャクソンモジュール日時ドキュメントから

+0

? – shmosel

+0

私の誤字は残念です。 @shmosel – bitweaver

+0

'println()'の完全な出力は何でしたか? – shmosel

答えて

3

:移植タイムスタンプに変換することができず、WRITE_DATES_AS_TIMESTAMPSが有効になっている場合代わり配列として表され

LOCALDATE、にLocalTime、LocalDateTimeを、及びOffsetTime、。

`BigDecimal`はここに来るん完全なドキュメントのページhere

関連する問題