2
Jersey와 MOXy를 사용하여 REST 서비스를 작성하고 있습니다. "숫자는"타입이 취소 인용해야한다 동안Jersey + MOXy를 사용하는 JSON의 변수 유형
{
indexes:[
{
"name": "ABC",
"value": "abcdef"
"displayValue": "abcdef",
"type": "string"
},
{
"name": "XYZ",
"value": 12345
"displayValue": "12345",
"type": "number"
},
...
]
}
문자열 형을 인용한다 : 나는 다음과 같습니다 객체의 JSON 배열을 작성해야합니다.
나는 서비스 요청에 다음과 같은 POJO를 반환하려고 :public class Index {
String name;
Object value;
String displayValue;
String type;
}
나는 "유형"에 따라, 값으로 정수 또는 문자열 중 하나를 할당 할 setValue의 정의. 마찬가지로 getValue를 정의하여 Integer 또는 String 중 하나를 반환합니다.
{
indexes:[
{
"name": "ABC",
"value": {
"type": "xsd:string",
"value": "abcdef"
},
"displayValue": "abcdef",
"indexType": "string"
},
{
"name": "XYZ",
"value": {
"type": "xsd:int",
"value": 812501
},
"displayValue": "812501",
"indexType": "number"
},
...
나는, "값"필드의 변수 유형 값을 필요 달성하기 위해 어떤 방법이 있나요 : 여기
는 비 놀랍게도, 중괄호의 다른 수준을 생성하는, 내 출력?
답장을 보내 주셔서 감사합니다. 네, 당신의 본보기가 바로 제가 필요로하는 것입니다. 그러나, 나는 잭슨 (이것은 나의 결정이 아니다)을 사용하지 않고, 객체를위한 "유형"을 생성하는 MOXy를 사용한다. –
또한 POJO를 JSON으로 직접 변환하지 않습니다. POJO를 서비스 응답으로 반환하므로 MOXy는 나중에 그 마법을 사용합니다. –