如何创建一个POJO类的动态数据类型的字段在Java?



我有一个动态JSON响应。

如果用户只有一个地址,那么JSON响应将如下:-

{
"firstName": "Amod",
"lastName": "Mahajan",
"profession": "Software Tester",
"address": {
"houseNo": 404,
"streetName": "Not found",
"city": "Bengaluru",
"state": "KA",
"country": "IN"
}
}

如果用户有多个地址,那么JSON响应将如下所示:-

{
"firstName": "Amod",
"lastName": "Mahajan",
"profession": "Software Tester",
"address": [
{
"houseNo": 404,
"streetName": "Not found",
"city": "Bengaluru",
"state": "KA",
"country": "IN"
},
{
"houseNo": 204,
"streetName": "No Content",
"city": "Delhi",
"state": "DL",
"country": "IN"
}
]
}

如何创建一个可以容纳两者的POJO ?如果我为地址部分创建一个POJO,那么首先我需要有"地址地址";第二个是"列表地址"。我希望它在一个pojo中,可以动态地容纳两者。

我认为与键" address "的类型相对应的值应该始终使用类型array声明,尽管它只有一个元素。如果你不想改变JSON结构,POJO类声明如下:

public class Person {
// omit other fields and getter and setter.
List<Address> addressInfo;
}

如我们所见,我们可以用List来表示一个或多个地址信息,也可以用Address[]来表示。

最新更新