JSONArray与Java对象之间的转换

通过接口调用或者配置文件,我们拿到了为json形式的字符串;其中已数组形式保存了同一类型的多个对象;

我们要将其转换为Llst形式的java对象集合;

直接上代码:

首先是要保存的数据对象;

@Data //该注解提供get/set方法,lombok插件
public class PlatformModel {
    private String id;
    private String name;
    private String platcode;
}
要转换的json字符串:

String platform=

"[
{"id": "0","name": "津贵所","platcode": "tjpme"},
{"id": "1",name: "齐鲁商品","platcode": "qiluce"},
{"id": "2",name: "广交所","platcode": "sxbrme"},
{"id": "3",name: "一带一路","platcode": "gdpmec"}
]";

下面以转换为HashMap为例子来说明转换;

首先定义存储集合的HashMap;

//其中key为id,值为对象自己

private  Map<String,PlatformModel> platformMap=new HashMap<>(); 
其次是转换方法:
private void getPlatformMap(){
    JSONArray platformList = JSON.parseArray(platforms);


    for (Object jsonObject : platformList
            ) {
        PlatformModel platformModel = JSONObject.parseObject(jsonObject.toString(), PlatformModel.class);
        platformMap.put(platformModel.getId(), platformModel);
    }
};
执行上述方法即可转换字符窜为java对象集合;
如果不想要HashMap,而是要ArrayList集合来存储;
则定义存储集合的ArrayList;
private  
ArrayList<PlatformModel> platformList=new ArrayList<>(); 

private void getPlatformList(){
    JSONArray platformList = JSON.parseArray(platforms);


    for (Object jsonObject : platformList
            ) {
        PlatformModel platformModel = JSONObject.parseObject(jsonObject.toString(), PlatformModel.class);
        platformList.put(platformModel);
    }
}
大功告成;
如此就转换结束了。

 
 
 

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值