JSON对象转为Java类对象

本文讲述两种方法,使JSON对象转为Java类对象。基于FastJson1

对于以下的JSON对象:

{
    "message": "成功",
    "code": 1,
    "records": [
        {
            "id": 99309,
            "brokerName": "",
            "fileType": "协议",
            "effectiveDate": "20220818",
            "createDate": "20220812"
        },
        {
            "id": 99308,
            "brokerName": "",
            "fileType": "合同",
            "effectiveDate": "20220812",
            "createDate": "20220812"
        }
    ]
}

假设以上的JSON对象已通过toJSONString()方法转为String,那么有两种方法可以将其转为Java类对象,前提是已定义一个YourClass类,其成员变量可以容纳以上records内的各个字段,两种转换方法如下:

// 方法一:
JSONObject jsonResult = JSON.parseObject(result);	// result是以上JSON对象转成的String
String code = jsonResult.getString("code");
String message = jsonResult.getString("message");
JSONArray arrayData = jsonResult.getJSONArray("records");

for (Object obj : arrayData) {
    JSONObject jsonObj = (JSONObject) obj;
    YourClass agreement = JSON.toJavaObject(jsonObj, YourClass.class);
    agreement.setFilePath(concatYourClassPath(agreement.getId()));
    logger.info("单个对象:" + agreement.toString());
}


// 方法二:
JSONObject jsonResult = JSON.parseObject(result);
String code = jsonResult.getString("code");
String message = jsonResult.getString("message");
JSONArray jsonArray = jsonResult.getJSONArray("records");
List<YourClass> list = jsonArray.toJavaList(YourClass.class);
for (YourClass elem : list) {
    logger.info("单个对象:" + elem.toString());
}

  • 7
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值