2013-11-20 20 views
0

這一塊類的,我已經映射到休眠:如何將多組從Hibernate類映射到Json?

@OneToMany(cascade=CascadeType.ALL) 
@JoinColumn(name="hall_id") 

Set<Literature> literatures; 

@OneToMany(cascade=CascadeType.ALL) 
@JoinColumn(name="hall_id") 

Set<RecycleFacility> recycleFacilities; 

@OneToMany(cascade=CascadeType.ALL) 
@JoinColumn(name="hall_id") 

Set<Assent> assents; 

但是,當我試圖映射這個類JSON,我總是有一個堆棧。我使用的是Jackson Mapper,Genson和Google Gson,但他們無法映射這段代碼(或者我不知道如何映射這些代碼)。任何人都可以告訴我,如何繪製這種設置的屬性?

回答

0

假設你的JSON格式是這樣

{ 
    "literatures":[ 
     { 
     "id":10, 
     "name":"abc" 
     } 
    ], 
    "recycleFacilities":[ 
     { 
     "id":20, 
     "name":"testFaculty" 
     } 
    ], 
    "assents":[ 
     { 
     "id":30, 
     "name":"Test" 
     } 
    ] 
} 

,並假設你的對象模型類是在其他類由像

Class Another{ 

@OneToMany(cascade=CascadeType.ALL) 
@JoinColumn(name="hall_id") 

Set<Literature> literatures; 

@OneToMany(cascade=CascadeType.ALL) 
@JoinColumn(name="hall_id") 

Set<RecycleFacility> recycleFacilities; 

@OneToMany(cascade=CascadeType.ALL) 
@JoinColumn(name="hall_id") 

Set<Assent> assents; 
// getter/setter 
} 

然後你就可以分析和並填充你的Hibernate對象模型下面。

Another response = gson.fromJson(reader, Another.class); 

您可以從模型的JSON如下

Gson gson = new Gson(); 
String jsonString= gson.toJson(yourObject);