一尘不染

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

json

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

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

String jsonstr = gson.toJson(objResult);

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


阅读 371

收藏
2020-07-27

共1个答案

一尘不染

Gson不支持该功能。从用户指南

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

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

2020-07-27