使用GSon将匿名Java对象类型转换为JSON

问题描述:

有没有可能使用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

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