gpt4 book ai didi

java - 映射到 JsonProperty 时对 JSON 创建实践感到困惑

转载 作者:行者123 更新时间:2023-11-30 07:21:19 26 4
gpt4 key购买 nike

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 上映射的文档和实践。

  1. JSON 字段命名约定是否不合适?

    或/与

  2. 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/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com