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

AHm*_*Net 7 java json gson

是否有可能使用GSON或JAVA上的任何其他库将匿名对象类型序列化为JSON?

Object objResult = new Object() {
                boolean success = true;
                String  email="mail@gmail.com";
            };

String jsonstr = gson.toJson(objResult);
Run Code Online (Sandbox Code Playgroud)

在此示例中,字符串jsonstr返回空值.

Sot*_*lis 10

Gson不支持该功能.来自用户指南

与内部类,匿名类和本地类中的外部类对应的字段将被忽略,并且不包括在序列化或反序列化中

您可以使用表示匿名类型的超类的Class(或其他Type)来描述使用重载toJson(Object, Type)方法序列化的内容,但您仍将丢失匿名子类中定义的任何新字段.(显然,有Object没有,因为Object没有字段.)

  • 这让我在地图上:`new HashMap <String,Object>(){{put("key","value");}}`序列化为null. (4认同)