宁静的Web服务Json字段以资本名称开头

时间:2014-01-13 20:20:13

标签: json

我使用Jackson& amp;和我建立了一个restfulwebservice。 gson在eclipse中解析。

如果我的输入Json文本的起始字母很小,那么我的代码工作正常,即

{
  "fields":"value"

}

它正在返回一条响应消息,如

{
  "fields":"value"

}

但如果我的json文本以大写字母开头,那么

{

  "Ord_Num":"value"
}

它正在返回{},即null。 (我使用@JsonProperty(“Ord_Num”)String ordnum)

请在下面找到我的gson解析器并输入解析器文件。

@Path("/hello")
public class Hello {
@GET
@Path("/response")
@Consumes(MediaType.APPLICATION_JSON)
public static Response getSampleResponse() {
    return Response.status(200).build();
}

@POST
@Path("/send")
public static Response postSampleResponse(SamplePojo sp) {

    Gson gson = new Gson();
    gson.toJson(sp);
    return Response.status(201).type(MediaType.APPLICATION_JSON)
            .entity(gson.toJson(sp)).build();

}
}

Sampplepojo.java:

public class SamplePojo {

@JsonProperty("Ord_Num") String ordnum;

public String getOrdnum() {
    return ordnum;
}

public void setOrdnum(String field) {
    this.ordnum = field;

}
}

1 个答案:

答案 0 :(得分:0)

JSON标准说:

  

文字名称必须小写。不允许使用其他文字名称。

如果您尝试使用大写字母,那么为什么会得到一个空的json对象。

请参阅rfc了解JSON http://tools.ietf.org/search/rfc4627