2012-10-28 1 views
0

JSON 객체로 변환하는 간단한 POJO가 있습니다.JAX-RS를 사용한 JSON 응답

@XmlRootElement 
public class Data { 
    public Data(){} 
    private int roll; 
    private String name; 
    public int getRoll() { 
     return roll; 
    } 
    public void setRoll(int roll) { 
     this.roll = roll; 
    } 
    public String getName() { 
     return name; 
    } 
    public void setName(String name) { 
     this.name = name; 
    } 
} 

{ 
name: "Adrian", 
roll: 77 
} 

이 제품은 미세 같이 간단한 JSON 오브젝트로 변환한다. 이제 내 시스템 내 모든 JSON의 retuns은, 내가 그들에게이 유형으로 원하는 것은 내가 클라이언트로 전송 객체의 어느 유형의 데이터라는 이름의 객체 lile

{ 
app_name:abc, 
app_version:1 
data: 
{ 
    user : 
    { 
    name: "Adrian", 
    roll: 77 
    } 

} 

의 객체를 포함 할 것이다. 누구든지 내가 어떻게 할 수 있는지 보여 줄 수 있니?

종류 감사합니다.

답변

3

당신이, 래퍼의 어떤 종류로 Data 인스턴스를 감싸 적절한 JAXB 주석을 가진 클래스 작성하려면 다음

@XmlRootElement 
public class DataWrapper { 

    private Data data; 
    private String app_name; 
    private int app_version; 

    // Constructors, Getter, Setter 
} 

그런 다음 JAX-RS 방법은 이러한 DataWrapper를 생성하고 반환을 :

@GET 
public Response getDataWrapper() { 
    DataWrapper dw = new DataWrapper(app_name, app_version, new Data(...)); 
    return Response.ok(dw).build(); 
}