当我尝试用Jackson Library将JSON文件映射到Object时遇到了一个问题,我尝试了很多方法,但仍然不起作用。
这是我的JSON文件:
{
2: {
1: {
cuota: "25092.87",
var12m: "-4.01",
var1m: "4.23"
},
2: {
cuota: "23319.83",
var12m: "-0.63",
var1m: "3.33"
},
3: {
....
}
},
3: { ..... }
我在Java中的对象是:
public class AfpsDetalles {
private String key;
private HashMap<Integer, Fondos> fondos = new HashMap<Integer, Fondos>();
public static class Fondos{
private float cuota;
private float var12m;
private float var1m;
}
}
当我绘制对象时,我使用这个:
HashMap<Integer,AfpsDetalles> afpDetalle = mapper.readValue(JSON FILE, new TypeReference<HashMap<Integer,AfpsDetalles>>() {});
杰克逊错误地说,这是第一个"1"的问题。请帮忙,我们会感激的。
这不是有效的JSON。JSON属性名称必须是字符串,字符串用双引号括起来。所以第一件事就是解决这个问题。