Java 动态地将JSON对象添加到POJO
我想将一个JSON对象数组动态存储到POJO类中,如何在java中完成这项特殊的工作Java 动态地将JSON对象添加到POJO,java,json,pojo,Java,Json,Pojo,我想将一个JSON对象数组动态存储到POJO类中,如何在java中完成这项特殊的工作 [ { "history":"L", "loan":"12345" "status":1 . . }, { "History":"L", "loan":"67890" "status":1 . . }, .... ] 你需要有一个模型。 假设您的json字符串如下所示: String temp_json_string = "{ \"history\":\"L\", \"loan\":\"12345\", \"
[
{
"history":"L",
"loan":"12345"
"status":1
.
.
},
{
"History":"L",
"loan":"67890"
"status":1
.
.
},
....
]
你需要有一个模型。 假设您的json字符串如下所示:
String temp_json_string = "{ \"history\":\"L\", \"loan\":\"12345\", \"status\":\"1\"}";
转到这个或类似的站点,通过在该链接中粘贴json字符串为您的temp_json_字符串生成一个类,然后获取类,如果需要,选择getter和setter
创建一个新的gson/jackson对象(导入该库maven或buildjre系统路径),将字符串转换为这个“BankLoanDetails”类
您的my_loan_pojo是表示json字符串的pojo
你在上查过了吗?我在扩展阿卡什的答案
import org.codehaus.jackson.map.ObjectMapper;
导入org.codehaus.jackson.map.type.TypeFactory;
---
ObjectMapper mapper=新的ObjectMapper();
List List=mapper.readValue(JSONString,TypeFactory.collectionType(List.class,DTO.class));
首先创建一个POJO类,如下所示:
公共类贷款{
私人字符串历史;
私人贷款;
私人身份;
\\生成getter、setter和toString方法
}
现在解析json并转换为jSONArray(导入json简单库)
String path=“json文件的路径”;
文件f=新文件(路径);
JSONParser=新的JSONParser();
objectobj=parser.parse(新文件读取器(f));
JSONArray JSONArray=(JSONArray)obj;
现在
ObjectMapper mapper=new ObjectMapper();
字符串jsonStr=mapper.writeValueAsString(jsonArray);
List loanList=Arrays.asList(mapper.readValue(jsonStr,Loan[].class));
for(贷款l:贷款清单)
系统输出打印LN(l);
注意:json数组包含不同的键作为历史(首先
对象)和历史记录(第二个对象)。将其更改为贷款中的历史记录
类,数据成员为历史记录
您可以创建具有相同属性的POJO类,并使用jackson自动映射。参考任何spring boot rest api示例以更好地理解它使用下面的链接来理解它我目前已经这样做了,但是我想直接根据主体响应来做,而不需要看到响应JSON键如果我将JSON obj作为参数而不是字符串,那么这会起作用吗?DTO.class是什么
Gson gson = new Gson();
BankLoanDetails my_loan_pojo = gson.fromJson(temp_json_string,
BankLoanDetails.class);