2014-12-30 28 views
2

我已經在此計算器和外部看到了對此問題的多個答案。但我無法理解這裏真正的問題。JSON:儘管在POJO和JSON文件中包含所有字段,但無法識別的字段異常

我有一個pojo類,下面給出。

public class User{ 

    private int id; 
    private String name; 
    private String houseNumber; 
    private String location; 

    public int getId() { 
     return id; 
    } 
    public void setId(int id) { 
     this.id = id; 
    } 

    public String getname() { 
     return name; 
    } 
    public void setname(String name) { 
     this.name = name; 
    } 
    public String gethouseNumber() { 
     return houseNumber; 
    } 
    public void sethouseNumber(String houseNumber) { 
     this.houseNumber = houseNumber; 
    } 
    public String getLocation() { 
     return location; 
    } 
    public void setLocation(String location) { 
     this.location = location; 
    } 
} 

我有一個JSON文件,如下所示:

[{ 
      "id":1, 
      "name": "roy", 
      "houseNumber":"No/242", 
      "location" :"Germany" 
    }, 
    { 
      "id":2, 
      "name": "philip", 
      "houseNumber":"No/252", 
      "location" :"Germany" 
    }] 

文件的每一個JSON條目都有一個值的字段位置。但是,爲什麼我得到了異常無法識別的字段「位置」,儘管在我的POJO和JSON文件中都有字段?我想知道這個的原因。許多解決方案都建議使用註釋來處理JSON,如@JsonIgnoreProperties。它不適合我。

+0

完成POJO包括getter和setter –

+0

發佈的JSON代表用戶列表。你是否將它反序列化爲列表或用戶對象?如果您試圖將該JSON轉換爲User對象,那麼您將得到UnrecognizedProperty異常。 –

+0

我將它反序列化爲一個列表 – user1930402

回答

3

嘗試在你的吸氣和吸氣器上正確使用駱駝案例,我知道這有時會導致傑克遜產生意想不到的結果。

public String getName() { 
     return name; 
    } 
public void setName(String name) { 
     this.name = name; 
} 
public String getHouseNumber() { 
    return houseNumber; 
} 
public void setHouseNumber(String houseNumber) { 
    this.houseNumber = houseNumber; 
} 
2

我想你的代碼,併爲我
的@JsonIgnoreProperties正常工作不是必需的。您可以執行以下操作

String jsonString = "[{\"id\":1,\"name\": \"roy\",\"houseNumber\":\"No/242\",\"location\" :\"Germany\"},{\"id\":2,\"name\": \"philip\",\"houseNumber\":\"No/252\",\"location\" :\"Germany\"}]"; 
     ObjectMapper mapper = new ObjectMapper(); 
     List<User> a = mapper.readValue(jsonString, new TypeReference<ArrayList<User>>() {}); 
相關問題