SpringBootデフォルト設定
以下の設定がdisableになっている
- MapperFeature.DEFAULT_VIEW_INCLUSION
- DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES
- レスポンスデータクラスに存在しない項目が送付されてもエラーする設定。予告なしにAPI側が項目追加してもエラーで落ちないようにするため、disableにするのが望ましい
- SerializationFeature.WRITE_DATES_AS_TIMESTAMPS
- 日付/時刻はデフォルトでタイムスタンプとしてシリアル化される。
SpringBootデフォルト設定以外に別途設定が必要な場合に設定を追加する
Kotlin クラスとデータクラスのサポートライブラリ設定
libs.versions.toml
[libraries] jackson-module-kotlin = { module = "com.fasterxml.jackson.module:jackson-module-kotlin" }
Instant → Stringの変換がシリアライズ時にうまく動作しない場合
以下設定をConfigクラスなどの設定に追加すると、エポックTimeに変換されていたのが、2011-12-03T10:15:30.123456Zの形式に変換されるようになる。
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false)
参考URL
その他のJackson設定
- 以下にも設定について記載しているので、参考までに共有