Джексон: информация о типах сериализации для примитивных типов - PullRequest
0 голосов
/ 01 июня 2019

При использовании jackson 2.9.8 есть ли способ всегда сериализовать информацию о типе (полное имя класса) для каждого отдельного сериализованного объекта, даже примитивных типов?.

КакНапример, я хочу, чтобы следующий код печатал ["java.util.ArrayList",["java.lang.String","ONE"],["java.lang.String","TWO"]] вместо ["java.util.ArrayList",["ONE","TWO"]].

public static void main(String[] args) throws Exception {
  final ObjectMapper mapper = new ObjectMapper();
  mapper.disable(SerializationFeature.FAIL_ON_EMPTY_BEANS);
  mapper.enable(SerializationFeature.WRITE_ENUMS_USING_TO_STRING);
  mapper.configure(MapperFeature.SORT_PROPERTIES_ALPHABETICALLY, true);
  mapper.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);

  List<String> list = new ArrayList<String>();
  list.add("ONE");
  list.add("TWO");

  Writer writer = new StringWriter();
  mapper.writerFor(list.getClass()).writeValue(writer, list);

  System.out.println(writer.toString());
}

Cheers.

...