2014-11-07 152 views
5

有沒有可能使用Gson或JAVA上的任何其他庫將匿名對象類型序列化爲JSON?使用GSon將匿名Java對象類型轉換爲JSON

Object objResult = new Object() { 
       boolean success = true; 
       String email="[email protected]"; 
      }; 

String jsonstr = gson.toJson(objResult); 

在這個例子中,字符串jsonstr返回一個空值。

+0

任何幫助PLZ !!!!! – 2014-11-07 00:06:17

+0

嗯,它並不是真正的「匿名」,因爲對象的身份與它相同。但我不知道有一套工具可以破解它。 (當然,人們可以很容易地編寫代碼來生成所需的映射並將其序列化 - 這比「破解」類要容易得多。) – 2014-11-07 00:14:44

+0

因此不可能:p – 2014-11-07 00:34:30

回答

8

Gson不支持該功能。從對應於內部類,匿名 類和局部類外班user guide

字段被忽略,並且不包括在 序列化和反序列化

可以使用Class(或其他Type)表示匿名類型的超類,用於描述使用重載的toJson(Object, Type)方法序列化的內容,但仍會丟失匿名子類中定義的任何新字段。 (顯然,與Object,這沒有什麼,因爲Object沒有字段。)

+0

您知道嗎任何其他庫支持此功能? – 2014-11-07 01:42:58

+1

@AHmédNet傑克遜似乎支持它。 – 2014-11-07 01:49:56

+0

Okéyythank's :) – 2014-11-07 15:15:34