Java Jackson反序列化内部自定义类对象
我有一个类似的班级Java Jackson反序列化内部自定义类对象,java,jackson,objectmapper,Java,Jackson,Objectmapper,我有一个类似的班级 public class User { public int id; public String name; } public class Item { public int id; public String itemName; public User owner; } { "id": 1, "itemName": "theItem", "owner": { "id": 2,
public class User {
public int id;
public String name;
}
public class Item {
public int id;
public String itemName;
public User owner;
}
{
"id": 1,
"itemName": "theItem",
"owner": {
"id": 2,
"name": "theUser"
}
}
我从类似于的api获取json数据
public class User {
public int id;
public String name;
}
public class Item {
public int id;
public String itemName;
public User owner;
}
{
"id": 1,
"itemName": "theItem",
"owner": {
"id": 2,
"name": "theUser"
}
}
我有一个对象映射器将json数据转换为“Item”对象
但是owner.id和owner.name的值为null,因为它无法在json中反序列化json。反序列化内部自定义对象的解决方案是什么?这似乎很好。我尝试了Jackson 1.9.13(因为您使用的是<2的版本)。能否指定您使用的确切版本,以及
mapper
是否有任何其他配置?还要确认您正在反序列化文件中导入正确的用户
和项目
类。我使用的是相同的版本。但这对我不起作用。是的,我导入了正确的类。我试着用Gson映射对象。它似乎工作得很好。所以,我只是在我的应用程序中用Gson替换了jackson。但仍在试图找出为什么它不起作用。我的应用程序中没有任何其他映射器配置。这似乎可以正常工作。我尝试了Jackson 1.9.13(因为您使用的是<2的版本)。能否指定您使用的确切版本,以及mapper
是否有任何其他配置?还要确认您正在反序列化文件中导入正确的用户
和项目
类。我使用的是相同的版本。但这对我不起作用。是的,我导入了正确的类。我试着用Gson映射对象。它似乎工作得很好。所以,我只是在我的应用程序中用Gson替换了jackson。但仍在试图找出为什么它不起作用。我的应用程序中没有任何其他映射器配置。