如何将类中的静态变量转换为json

时间:2013-02-27 15:57:16

标签: java json gson

嗨我有一个只包含静态变量的类常量.public class Constants

public class Constant
{
    public static class A
    {
        public static class B
        {
            public static final int  COLUMN = 0;
            public static final String  TYPE =  ColumnType.INPUT;
        }
    }
}

有没有办法将此类转换为JSON?

我正在使用gson,但显然它忽略了静态变量。那我该怎么办呢? 谢谢。

2 个答案:

答案 0 :(得分:7)

您可以使用GsonBuilder类上的this method配置GSON忽略的字段修饰符。

答案 1 :(得分:5)

接受的答案是正确的。为清楚起见,这是一个工作示例。您可以将GsonBuilder类与方法excludeFieldsWithModifiers.

一起使用
    GsonBuilder gsonBuilder  = new GsonBuilder();
    // Allowing the serialization of static fields
    gsonBuilder.excludeFieldsWithModifiers(java.lang.reflect.Modifier.TRANSIENT);
    // Creates a Gson instance based on the current configuration
    Gson gson = gsonBuilder.create();
    String json = gson.toJson(objectToSerialize);
    System.out.println(json);