Jackson反序列化json字符串到java对象对Object类型和抽象类处理
1)java对象的属性为Object,将会转化为LinkedHashMap
public class ObjectTest {
private static final Logger logger = LoggerFactory.getLogger(ObjectTest.class);
@Test
public void objectTest() throws JsonProcessingException {
Person person = new Person();
person.setName("zhibin");
List<Object> pets = new ArrayList<>();
pets.add(Pet.builder().name("mimi").age(2).build());
pets.add(Pet.builder().name("wangwang").age(3).build());
person.setPets(pets);
//mapper
ObjectMapper mapper = new ObjectMapper();
mapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
String json = mapper.writeValueAsString(person);
//{"name":"zhibin","pets":[{"age":2,"name":"mimi"},{"age":3,"name":"wangwang"}]}
logger.info(json);
Person person2 = ma