以大写名称开头的REST风格Web服务Json字段

kokeuurv  于 2022-12-05  发布在  其他
关注(0)|答案(1)|浏览(128)

我在Eclipse中使用Jackson& gson解析构建了一个restfulwebservice。
如果我输入的Json文本的起始字母很小,即

{
  "fields":"value"

}

它将返回一个响应消息,如

{
  "fields":"value"

}

但是如果我的json文本以大写字母开头

{

  "Ord_Num":"value"
}

它返回{},即null。(我使用了@JsonProperty(“Ord_Num”)字符串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;

}
}
wribegjk

wribegjk1#

JSON标准规定:
文字名称必须是小写。不允许使用其他文字名称。
这就是为什么如果尝试使用大写字母,会得到一个空的JSON对象。
请参阅JSON的RFC:https://www.rfc-editor.org/rfc/rfc4627

相关问题