這可能是一個重複的問題..請參閱此link。
我能夠將一個json對象映射到POJO.But如何將json對象的數組轉換爲使用相同jackson框架的pojo。使用傑克遜對象映射器將JSON數組轉換爲POJO
private void jsonToPojo(){
ObjectMapper mapper=new ObjectMapper();
try {
User1 user1=mapper.readValue(readFromFile(), User1.class);
User1[] user2=mapper.readValue(readFromFile(), User1[].class);
System.out.println(user1);
Toast.makeText(getApplicationContext(), "inside try", 0).show();
} catch (JsonParseException e) {
// TODO Auto-generated catch block
Log.i("Exception", "jsonparseexception");
e.printStackTrace();
} catch (JsonMappingException e) {
// TODO Auto-generated catch block
Log.i("Exception", "jsonmapping exception");
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
Log.i("Exception", "ioexception");
e.printStackTrace();
}
}
這是類用戶對象。
public class User {
private int age = 23;
private String name = "amal";
private List<String> messages = new ArrayList<String>() {
{
add("hi");
add("how");
add("are u.");
}
};
//getter and setter methods
@Override
public String toString() {
return "User [age=" + age + ", name=" + name + ", " +
"messages=" + messages + "]";
}
這就是我試圖做的:(readFromFile()採用JSON從文件)
User1[] user2=mapper.readValue(readFromFile(), User1[].class);
的jsonToPojo()爲對象只有一個運作良好。但是,如果我嘗試上面的代碼行,它不是採取以下JSON:
[
{
"age":"23",
"messages":["hi","how","are u."],
"name":"amal"
},
{
"age":"98",
"messages":["Reply","my","question"],
"name":"You"
}
]
我已經測試過您的示例JSON,您的代碼適用於我。 User和User1類是相同的還是有兩個不同的類? – 2013-05-11 22:35:57
user1是一個新類。以及我想存儲json對象的數組pojo ..多數民衆贊成什麼我無法。 – amalBit 2013-05-13 05:16:15