来自文档:
Gson支持一些预定义的字段命名策略,以将标准Java字段名称(即以小写—“
sampleFieldNameInJava”开头的驼峰式名称)转换为Json字段名称(即sample_field_name_in_java或SampleFieldNameInJava)。有关预定义的命名策略的信息,请参见FieldNamingPolicy类。
它还具有基于注释的策略,允许客户在每个字段的基础上定义自定义名称。请注意,基于注释的策略具有字段名称验证,如果提供了无效的字段名称作为注释值,则将引发“运行时”异常。
以下是如何同时使用Gson命名策略功能的示例:
private class SomeObject { @SerializedName("custom_naming") private final String someField; private final String someOtherField; public SomeObject(String a, String b) { this.someField = a; this.someOtherField = b; }}SomeObject someObject = new SomeObject("first", "second");Gson gson = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE).create();String jsonRepresentation = gson.toJson(someObject);System.out.println(jsonRepresentation);========输出========
{"custom_naming":"first","SomeOtherField":"second"}但是,对于您想要的,您可以使用以下代码:
Gson gson = new GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE).create();
通过使用UPPER_CAMEL_CASE选项,您可以实现自己的目标。



