2016-07-27 80 views
0

所以這裏是我在將一個複雜的json轉換爲一個java對象時遇到的問題
object。對象結構不匹配問題使用json fromJson方法

傳入的JSON是這樣的:

{ 
    "view": {  
     "unit": { 
      "sc": { 
       "private": 6, 
       "public": 6 
      }, 
     "step": "PREPARE", 
     "id": 3037, 
    ..... 
} 

注意,SC具有Java關鍵字的私人和公衆的領域。
在客戶端我有以下代碼來使用此json。

String obj = restTemplate.postForObject(url, entity, String.class);  
JsonObject jsonObj = new JsonParser().parse(obj).getAsJsonObject();  
T objFinal = buildGson(dateFormat).fromJson(jsonObj, PrepareStateObject.class); 

PrepareStateObject與相應的json相同,唯一的區別是sc對象。

public class sc implements java.io.Serializable { 
    private static final long serialVersionUID = -952803010396503926L; 
    private static final Logger log = LoggerFactory.getLogger(sc.class);  
    private Integer _public;  
    private Integer _private; 
    //.... 
}  

當我檢查jsonObj時,我可以看到sc對象的整個json。 但正如預期的那樣,fromJson方法由於字段名稱不匹配而無法填充sc對象。
如何在不使用傑克遜等mapper的情況下實現這一目標?

+0

你可以在這裏共享堆棧跟蹤嗎? – sparrow

+0

找到解決方案... – user3630294

回答