如何将JSON名称映射到Java类'使用Jackson解析器时可能(略微)不同的字段名称?
我有传入的JSON文档,我想使用Jackson parser转换为Java对象。这适用于JSON名称与最终Java对象字段名称匹配的位置(我在Play框架中执行此操作)。
但是,传入的JSON文档中的某些JSON名称不适合使用不错的Java字段名称。目前,更改所有现有JSON文档以使用正确的Java命名约定是不可行的。
例如
{
"goodName": "value",
"not-so-handy": "value"
}
我无法创建一个字段名称为"非常方便"的Java类。因为这不是Java中的合法名称。
如何将传入的JSON名称转换为指定的Java类'使用Jackson解析器的字段名称?
答案 0 :(得分:5)
使用@JsonProperty
:
@JsonProperty("goodName")
public String goodName;
@JsonProperty("not-so-handy")
public String notSoHandy;
这将解决问题。