我使用Spring MVC3.2和Jackson进行JSON映射。我想用数字序列化和反序列化属性名称。这是我的班级:
public Usage implement Serializable {
private String imei;
@JsonIgnore
@JsonProperty("4")
private long j2j;
@JsonIgnore
@JsonProperty("8")
private long call;
//Getters and setters
}
JSON:
{"imei":"352985052917115", "4":20, "8":10}
控制器:
@ResponseBody
@RequestMapping(value="/alert")
public JsonResult<Void> handleOverUsageAlertByDevice(@RequestBody Usage usage){
//Do something
}
但是当我将JSON发送到控制器时,发生404错误请求错误,说:
The request sent by the client was syntactically incorrect.
我可以使用number作为Json属性名吗?
您的回答将不胜感激。
答案 0 :(得分:1)
是的,“数字字符串”是完全合法的JSON名称,杰克逊支持它们。 所以问题不应该与请求处理中的其他问题有关。
答案 1 :(得分:0)
请在发送请求时尝试设置内容类型。 内容类型应设置为“application / json”。