Jackson 反序列化内部类的问题

no suitable constructor found, can not deserialize from Object value (missing default constructor or creator, or perhaps need to add/enable type information?)

报这样的错一定是因为你的实体类是个嵌套的包含内部类的。

例如:

public class Person{
    private String name;
    private int age;
    private Address address;
//省略getter setter

  public class Address{
    private String country;
    private String province;
   //省略getter setter
  }
}

假如你的实体类类似上面的话,用JackSon去反序列化json数据就会报文章开头那里的错。

你需要做两件事:

  1. 给内部类前面加上static
  2. 给内部类加上默认构造函数

改过后的内部类像这样:

public static class Address{
      public Address(){
      }
}

《Jackson 反序列化内部类的问题》 关注我的公众号.jpg

    原文作者:Thresh0ld
    原文地址: https://www.jianshu.com/p/856aeaea54ce
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞