Подтвердить что ты не робот

Джексон ObjectMapper с кодировкой UTF-8?

Я сам не смог найти ответ. Есть ли способ сказать джексону использовать кодировку UTF-8 при использовании ObjectMapper для сериализации и десериализации объектов?

Спасибо

4b9b3361

Ответ 1

Джексон автоматически определяет кодировку, используемую в источнике: согласно спецификации JSON действительными кодировками являются UTF-8, UTF-16 и UTF-32. Никакие другие кодировки (например, Latin-1) не могут использоваться. Из-за этого автоматическое обнаружение легко и доступно с помощью парсера - по этой причине не обнаружено кодирование. Итак, если вход UTF-8, он будет обнаружен как таковой.

Для вывода UTF-8 по умолчанию; но если вы явно хотите использовать другую кодировку, вы можете явно создать JsonGenerator (с помощью метода, который принимает JsonEncoding), и передать это на ObjectMapper.

Альтернативно, в обоих случаях вы можете вручную создать java.io.Reader/java.io.Writer и сделать его использующим любую кодировку, которую вы хотите.