java JSONArray转换对象

本文介绍了如何在Java中将JSONArray转换为对象,包括导入相关依赖、编写转换方法、调用该方法的具体步骤,并提到了可能用到的包。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.导入依赖
<dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency>
2.编写方法

public static <T> List<T> toBean(Object object, Class<T> cls) {
        //list初始化
        List<T> list = new ArrayList<>();
        try {
            //多个json串用JSONArray存
            JSONArray jsonArray = JSONArray.fromObject(object);
            for (Object qin : jsonArray
            ) {
                JSONObject jsonObject = JSONObject.fromObject(qin);
                T teacher = (T) JSONObject.toBean(jsonObject, cls);
                list.add(teacher);
            }

        } catch (Exception e) {
            log.warn("JSON conversion failed");
        }
        return list;
    }

3.调用方法(Teacher是个Bean类)

    @Test
    public void test581() {
        //这是一个json串
        String str1 = "{\"address\":\"北京市大兴区\",\"age\":\"26\",\"name\":\"李老师\"}";
        String str2 = "[{\"address\":\"北京市\",\"age\":\"26\",\"name\":\"李老师\"}, {\"address\":\"上海市\",\"age\":\"29\",\"name\":\"王老师\"}, {" +
                "\"address\":\"上海市\",\"age\":\"30\",\"name\":\"王老师\"}, {\"address\":\"上海市\",\"age\":\"31\",\"name\":\"王老师\"}, {\"address\"" +
                ":\"上海市\",\"age\":\"32\",\"name\":\"王老师\"}, {\"address\":\"上海市\",\"age\":\"33\",\"name\":\"王老师\"}, {\"address\":\"上海市\"," +
                "\"age\":\"34\",\"name\":\"王老师\"}, {\"address\":\"上海市\",\"age\":\"35\",\"name\":\"王老师\"}, {\"address\":\"上海市\",\"" +
                "age\":\"36\",\"name\":\"王老师\"}, {\"address\":\"上海市\",\"age\":\"37\",\"name\":\"王老师\"}]";

        System.out.println(toBean(str2,Teacher.class));
    }

4.在这里插入图片描述
5.可能用的包

import lombok.extern.slf4j.Slf4j;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.junit.jupiter.api.Test;
import org.springframework.stereotype.Component;
import osp.test.testdemo.pojo.Teacher;
import osp.test.testdemo.service.JsonUtil;
import java.text.ParseException;
import java.util.*;

如有任何问题,与我及时联系 。
不对的地方 恳请指正。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值