2013-03-01 90 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; 
} 
相关问题