使用Fastjson生成Json字符串少字段屬性(數據丟失)

最後是控制檯打印生成的結果以下:
FastJson生成字符串是:{"id":"2","name":"節點1","open":true}
Gson生成字符串是:{"id":"2","pId":"1","name":"節點1","open":true}node

 

 

用FastJson就是少了個屬性pId沒有被轉化出來,用Gson和其餘的卻能夠,而個人Node對象只是個普通的JAVA類而已,麻煩你看一下,謝謝!json

 

答案:1)你的get,set方法估計多半是自動生成的,Fastjson在生成的時候去判斷pId有沒有對應的get方法是區分了大小寫的,因此找不到對應的get方法(getPId())。post

2)若是頁面上也須要使用node對象,就必須使用自動生成的get、set方法。與1)相互衝突,最根本的解決辦法是,不適用第一個單詞只有一個小寫字母的屬性名,換一個屬性名字paId。spa

fastjson生成json時Null屬性不顯示

輸出結果能夠看出,null對應的key已經被過濾掉;這明顯不是咱們想要的結果,這時咱們就須要用到fastjson的SerializerFeature序列化屬性對象

也就是這個方法:JSONObject.toJSONString(Object object, SerializerFeature... features)字符串

相關文章
相關標籤/搜索