0
我實現了一個小應用程序,它將一些JSON數據作爲REST API的一部分提供。由於遺留原因,客戶端對屬性名稱有非常特殊的要求:使用下劃線並寫入大寫字母。JSON編組的自定義屬性名稱
所以我有這個類:
@XmlRootElement
@XmlAccessorType(XmlAccessType.FIELD)
public class Values {
public Values(String firstValue, String secondValue) {
this.firstValue = firstValue;
this.secondValue = secondValue;
}
@XmlAttribute(name = "FIRST_VALUE")
private String firstValue;
@XmlAttribute(name = "SECOND_VALUE")
private String secondValue;
public String getFirstValue() {
return firstValue;
}
public String getSecondValue() {
return secondValue;
}
}
爲了提供如JSON我有一個小的控制:
@RestController
public class Controller {
@RequestMapping(value = "/values")
@ResponseBody
public Values getValues() {
return new Value("v1", "v2");
}
}
我希望以下控制器提供
{
"FIRST_VALUE": "v1",
"SECOND_VALUE": "v2"
}
但相反,它會忽略@XmlAttribute註釋並提供
{
"firstValue": "v1",
"secondValue": "v2"
}
我錯過了什麼?