2015-06-08 147 views
0

我一直在申請我的專家級別的谷歌搜索技巧無濟於事,所以我需要你的幫助。GSON - JSON到Java對象

我想將我的json對象轉換爲java中的java對象。

JSON對象顯示爲... - { 「密碼」: 「B」, 「username」 的: 「一」}

和報表打印一次,我的企圖「把它轉換爲... username = b password = null

我的問題是爲什麼會發生這種情況,我該如何解決這個問題? (代碼如下)

Gson gson = new Gson(); 
    JSONObject jObj = new JSONObject(request.getParameter("input")); 
    User user = gson.fromJson(jObj.toString(), User.class); 

    System.out.println(user.getPassword()); 
    System.out.println(user.getUsername()); 

和「模型」類....

public class User { 
private String username; 
private String password; 

public User(String uName, String pWord){ 
    this.username = uName; 
    this.password = pWord; 
} 

public void setUsername(String uName){ 
    username = uName; 
} 

public String getUsername(){ 
    return username; 
} 

public void setPassword(String pWord){ 
    password = pWord; 
} 

public String getPassword(){ 
    return password; 
} 
} 
+0

'username' or'userName'? –

+0

由@SotiriosDelimanolis建議,案件事宜!如果您想爲域對象字段使用不同於JSON中使用的大小寫(或完全不同的名稱),請查看註釋字段的GSON文檔。 –

+0

啊業餘的錯誤,json對象初始化中的拼寫錯誤。謝謝Sotirios我發現了這個問題! – user3904388

回答

0

在這種情況下將溶液是有關的映射在JSON作爲「用戶名」時它應該具有被'用戶名'

請參閱註釋以獲取更多信息。

希望其他用戶發現這是一個有用的資源。