Jackson ObjectWriter с определенным SerializationConfig - PullRequest
0 голосов
/ 21 сентября 2018

Для проекта, который я запускаю, у меня есть глобальный экземпляр ObjectMapper с несколькими базовыми настройками.

В некоторых местах у меня есть небольшие отклонения, такие как изменение PropertyNamingStrategy.Для этих состояний Джексона вы можете использовать ObjectReader или ObjectWriter.

Однако кажется, что ObjectWriter не поддерживает вставку PropertyNamingStrategy.

Есть ли способ сохранить ObjectMapper и вставить PropertyNamingStrategy вa ObjectWriter без использования ObjectMapper.copy()?

Параметры, которые я просматривал, но они невозможны

Поскольку, насколько я вижу, вставка PropertyNamingStrategy, как показано ниже, не являетсяразрешено.

ObjectMapper mapper = new ObjectMapper();
ObjectWriter writer = mapper.writer()
    .with(PropertyNamingStrategy.UPPER_CAMEL_CASE));

И также нет возможности вставить SerializationConfig, как показано ниже.

ObjectMapper mapper = new ObjectMapper();
ObjectWriter writer = mapper.writer()
    .with(
        mapper.getSerializationConfig()
            .with(PropertyNamingStrategy.UPPER_CAMEL_CASE)
    );

ObjectReader поддерживает это

В настоящее времяЯ могу сделать это для ObjectReader, потому что разрешен следующий фрагмент:

ObjectMapper mapper = new ObjectMapper();
ObjectReader reader = mapper.reader()
    .with(
        mapper.getDeserializationConfig()
            .with(PropertyNamingStrategy.UPPER_CAMEL_CASE)
    );

ObjectReader не предоставляет функцию with для вставки PropertyNamingStrategy, однако он предоставляет функцию with для вставкиКонфигурация десериализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...