2013-03-01 20 views
1

我需要將某個JSON字符串轉換爲Java對象。我使用Jackson進行JSON處理。 這裏是我的Java類 -從Jersey Web服務中的JSONObject獲取數據時無法識別的屬性

公共類RequestClass {

String email_id; 
String password; 

public String getEmailId() { 
    return email_id; 
} 

public String getPassword() { 
    return password; 
} 

@Override 
public String toString(){ 

    return email_id+" "+password; 
} 

} 這裏是Web服務代碼

@POST 
@Consumes(MediaType.APPLICATION_JSON) 
@Produces(MediaType.APPLICATION_JSON) 
@Path("/dbconnect3") 
public String connectToDbTest3(RequestClass rc) { 
    System.out.println("connectToDbTest3"); 
    String email_id = rc.getEmailId(); 
    String password = rc.getPassword(); 
    System.out.println(email_id+" "+password); 

}

這引發異常UnrecognizedPropertyException與消息「無法識別的字段「email_id」(Class jaxrs.RequestClass),未標記爲可忽略「。

如果我不是我的Java類使用註釋@JsonIgnoreProperties(ignoreUnknown =真),我在線09獲得輸出 -

空MYPASSWORD

所以我不想忽略無法識別的字段,而是我想獲得email_id的值。

請說出爲什麼它顯示email_id爲無法識別的字段,而密碼獲取成功。

在此先感謝

+0

應該@JsonProperty給出的getEmailId()

前只需添加JsonProperty("email_id")( 「EMAIL_ID」)回答更新 – Kris 2013-03-02 05:54:46

回答

1

像下面

@JsonProperty("email_id") 
public String getEmailId() { 
return email_id; 
}