25

在.NET 桌面应用程序和 Java 服务器之间的原型通信中,使用带有 JSON 帖子的 REST,我遇到了区分大小写的问题。.NET 对象在 Pascal 大小写(这是 .NET 的常规格式)中具有属性,例如:( Symbol, EntryValue等),而同一对象的 Java 表示使用驼峰式大小写,例如symbol, entryValue.

服务器接收到的 json 值如下:

{"EntrySize":100,"Symbol":"AMZN"}

但是 Gson 不会以不区分大小写的方式反序列化。有没有办法让 Gson 做到这一点?

4

1 回答 1

43

使用FieldNamingPolicy,GsonBuilder来获取你的Gson对象。你的似乎匹配UPPER_CAMEL_CASE

Gson gson = new GsonBuilder()
        .setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE)
        .create();

对于任何例外,请使用注释来注释您的类字段@SerializedName

于 2012-11-02T03:39:58.767 回答