2012-11-29 2 views
0

저는 JSON을 처음 사용합니다. 그래서 다음과 같이 Person 객체를 반환하는 나머지 서비스를 쓰기 위해 노력하고 있어요 ....JSON 객체 표현

를 좀 도와주세요 :

json으로의 출력 모습이와
PersonJSONAdapter implements JsonSerializer<Person>, JsonDeserializer<Person> 
{ 
    public JsonElement serialize(final Person src, final Type typeOfSrc, final  JsonSerializationContext context) 
    { 
     if (src == null) 
      return null; 

     final JsonObject retVal = new JsonObject(); 

     retVal.addProperty("firstname", src.getFirstname()); 
     retVal.addProperty("lastname", src.getLastname()); 

     return retVal; 
} 

너무 : { "FIRSTNAME ":"XXX ", "LASTNAME ":"YYY " }

나는이 하나가 처럼 보이게 수있는 방법

"사람 " { "FIRSTNAME ":"XXX "를 "LASTNAME ":"YYY "유효 JSON 아니다 찾고위한3210}

감사합니다 ...

답변

0

. JSON은 데이터 표현 일 뿐이고 유형 정보와 같은 메타 데이터에 대한 지식이 없습니다.

당신이 얻을 수있는 가장 가까운 명시 적으로 같은 추가 속성으로 유형을 추가하는 것입니다 :

{ "@type":"Person", "firstname":"XXX", "lastname":"YYY" }

이것은 당신이 당신이 그것을 역 직렬화 할 때 올바른 클래스를 선택해야한다는 그러나 의미한다. 일부 라이브러리를 체크 아웃 할 수도 있지만 클래스를 직접 지정하거나 사용자 정의 주석을 직렬화 가능 클래스에 추가해야한다고 생각합니다.