以下の内容はhttps://uga-box.hatenablog.com/entry/2022/03/31/000000より取得しました。


【Spring Boot】Jackson2ObjectMapperBuilderCustomizerでObjectMapperBuilderをカスタマイズする

ObjectMapperをカスタマイズするためにJackson2ObjectMapperBuilderを使う場合、以下の設定がデフォルトで無効になっている

MapperFeature.DEFAULT_VIEW_INCLUSION DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES SerializationFeature.WRITE_DATES_AS_TIMESTAMPS

このときカスタマイズする設定との順番を制御したい

Jackson2ObjectMapperBuilderCustomizer

Jackson2ObjectMapperBuilderCustomizerを使えばJackson2ObjectMapperBuilderをカスタマイズでき、@Order アノテーションを使用することで、デフォルトの設定との順番を制御できるようになる

spring.pleiades.io

    @Bean
    @Order(Ordered.LOWEST_PRECEDENCE)
    @ConditionalOnClass(Jackson2ObjectMapperBuilder.class)
    public Jackson2ObjectMapperBuilderCustomizer jsonCustomizer() {
        return new Jackson2ObjectMapperBuilderCustomizer() {

            @Override
            public void customize(Jackson2ObjectMapperBuilder builder) {
                builder.propertyNamingStrategy(PropertyNamingStrategies.LOWER_CAMEL_CASE);
                builder.featuresToDisable(
                        SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,
                        DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
            }
        }
    }

Ordered.LOWEST_PRECEDENCEにすることで最後に設定されるようにしている

spring.pleiades.io

これで設定の順番を制御することができるようになった




以上の内容はhttps://uga-box.hatenablog.com/entry/2022/03/31/000000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14