JSON:
"ABCD": [
{
"xyz": 3,
"abc": 4,
"info": {
"MY_TITLE": "Hello World",
"MY_DESCRIPTION": "New to the world"
}
}
...similar sub parts
]
在上面的例子中,由于 info
本身就是另一个对象,因此子 string
是大写的。我在 java 中对这些的映射如下:
@JsonProperty("xyz")
private Integer xyz;
@JsonProperty("abc")
private Integer abc;
@JsonProperty("MY_TITLE")
private String myTitle;
@JsonProperty("MY_DESCRIPTION")
private Long myDescription;
需要一些有关 JSON 创建和在 java 上映射的文档和实践。
JSON 字段命名约定是否不合适?
或/与
JsonProperty
映射是否不正确?
最佳答案
嗯,这个映射对我来说似乎不合适。你应该拥有的是
// ...
@JsonProperty("xyz")
private Integer xyz;
@JsonProperty("abc")
private Integer abc;
@JsonProperty("info")
private MyInfoClass info;
// ...
然后,(单独的)MyInfoClass:
public class MyInfoClass {
@JsonProperty("MY_TITLE")
private String myTitle;
@JsonProperty("MY_DESCRIPTION")
private Long myDescription;
// getters, setters and so on
}
编辑:至于命名约定,我认为没有一种被广泛接受的方式,但我知道的最常见的约定是camelCase和snake_case(都使用非大写字母)。请参阅此问题以获取更多信息: JSON Naming Convention
关于java - 映射到 JsonProperty 时对 JSON 创建实践感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37520722/