2017-06-29 20 views
2

私はこのようなAPIからの日付形式があります。"date": 1498729813872日付形式のマッピングが正しく

をしかし、実際に、私は

私は直列化データのためのジャージとjackonを使用していますこのようにdd-M-yyyy hh:mm:ssにしたいですどのように私はマットの特定のフォーマットに日付を変更することができます

答えて

1

ジャクソンのObjectMapperのタイムスタンプとしてシリアル化日付を無効にします。例えば。

mapper.disable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS); 

日付フィールドに適切な注釈を付けます。例えば。

@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="dd-M-yyyy hh:mm:ss") 
private Date date; 

かもthkz男ObjectMapper

DateFormat df = new SimpleDateFormat("dd-M-yyyy hh:mm:ss"); 
mapper.setDateFormat(df); 

Docs for JsonFormat

+0

に書式を設定し...我々はJsonFormat.Shape'はのコンテンツを指し ' – Midhun

+1

日にshape.Stirngことを変更することができますJSONはあなたがシリアライズするJavaオブジェクトではありません。日付を表すためのJSON仕様はありません。あなたのケースでは 'Shape'は' STRING'または 'NUMBER'です。 'JsonFormat'のドキュメントリンクを追加しました –

+0

タイムゾーンを追加するにはどうすればいいですか?私はistとして保存しており、シリアル化するときにGMTに変換しています – Midhun