JSON对象数组到Java POJO
将此 JSON 对象转换为 java 中的类,映射将如何在您的 POJO 类中?
Converting this JSON object as a class in java, how would the mapping be in your POJO Class?
{
"ownerName": "Robert",
"pets": [
{
"name": "Kitty"
},
{
"name": "Rex"
},
{
"name": "Jake"
}
]
}
推荐答案
这种问题很流行,需要一般性的回答.如果您需要基于 JSON
或 JSON Schema
生成 POJO
模型,请使用
This kind of question is very popular and needs general answer. In case you need generate POJO
model based on JSON
or JSON Schema
use www.jsonschema2pojo.org. Example print screen shows how to use it:
使用方法:
- 选择目标语言.
Java
在你的情况下. - 选择来源.
JSON
在你的情况下. - 选择注释样式.这可能很棘手,因为它取决于您要用于序列化/反序列化
JSON
的库.如果架构很简单,请不要使用注释(None
选项). - 选择其他可选配置选项,例如
包括 getter 和 setter
.您也可以在IDE
中执行此操作. - 选择
预览
按钮.如果架构很大,请下载带有生成类的ZIP
.
- Select target language.
Java
in your case. - Select source.
JSON
in your case. - Select annotation style. This can be tricky because it depends from library you want to use to serialise/deserialise
JSON
. In case schema is simple do not use annotations (None
option). - Select other optional configuration options like
Include getters and setters
. You can do that in yourIDE
as well. - Select
Preview
button. In case schema is big downloadZIP
with generated classes.
对于您的 JSON
,此工具会生成:
For your JSON
this tool generates:
public class Person {
private String ownerName;
private List <Pet> pets = null;
public String getOwnerName() {
return ownerName;
}
public void setOwnerName(String ownerName) {
this.ownerName = ownerName;
}
public List < Pet > getPets() {
return pets;
}
public void setPets(List < Pet > pets) {
this.pets = pets;
}
}
public class Pet {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
对于 Android Studio
和 Kotlin
阅读 RIP http://www.jsonschema2pojo.org.
For Android Studio
and Kotlin
read RIP http://www.jsonschema2pojo.org.
相关文章