当前位置: 首页 > news >正文

Map<String,Object>中Fastjson提取entrys对应的值

今天在处理接口数据时,需要解析出对方传入的json数据,并需要取出其中一个字段的值来判断,记录下我的步骤,提供参考:

1.json数据准备

{
  "hrOrgUnit": "00000000-0000-0000-0000-000000000000CCE7AED4",
  "billState": "0",
  "number": "20250305-asfoq",
  "applyDate": "2025-03-05",
  "applier": "sOGnUMynTtCJvT5mm5ZzVIDvfe0=",
  "_entityName": "com.kingdee.eas.hr.affair.app.EmpEnrollBizBill",
  "entrys": [{
    "empNumber": "F002493",
    "empName": "张三",
    "IDCardNo": "41048219990709103X",
    "position": "6666693wQn/CrQLWFYTeIW8xi5HSuYS4=",
    "adminOrg": "ODFLt7rTRj++XjDzvF0pW8znrtQ=",
    "bizDate": "2025-03-05",
    "bizTime": "2025-03-05 00:00:00",
    "enrollDate": "2025-03-05",
    "nCell": "-15538223884",
    "sourceBillType": "400",
    "hrBizDefine": "DawAAAApC9DmaL7Z",
    "affairActionReason": "1wXho31/Tsi0LhiLKfCQ+JYRae4=",
    "variationReason": "sKSMJ3pDTQCtVNKkqB5WnOas36w=",
    "empType": "00000000-0000-0000-0000-000000000002A29E85B3",
    "useOldNumber": "0",
    "enrollAgain": "0",
    "isPrimary": "0",
    "sex": ""
  },
    {
      "empNumber": "F002494",
      "empName": "李四",
      "IDCardNo": "41048219990709103X",
      "position": "99999993wQn/CrQLWFYTeIW8xi5HSuYS4=",
      "adminOrg": "ODFLt7rTRj++XjDzvF0pW8znrtQ=",
      "bizDate": "2025-03-05",
      "bizTime": "2025-03-05 00:00:00",
      "enrollDate": "2025-03-05",
      "nCell": "-15538223884",
      "sourceBillType": "400",
      "hrBizDefine": "DawAAAApC9DmaL7Z",
      "affairActionReason": "1wXho31/Tsi0LhiLKfCQ+JYRae4=",
      "variationReason": "sKSMJ3pDTQCtVNKkqB5WnOas36w=",
      "empType": "00000000-0000-0000-0000-000000000002A29E85B3",
      "useOldNumber": "0",
      "enrollAgain": "0",
      "isPrimary": "0",
      "sex": ""
    }],
  "id": ""
}

上面的是json数据,需要取出 position  字段的值

2.采用 fastjson 的组件库进行处理

上述的json 对应的是 param.get("obj").toString()

// 将JSON字符串解析为JSONObject
        JSONObject jsonObject=JSON.parseObject(param.get("obj").toString());
        System.out.println(jsonObject);

        //获取需要的json数组,将entrys获取
        JSONArray jsonArray =jsonObject.getJSONArray("entrys");
        System.out.println(jsonArray);
        System.out.println(jsonArray.size());

        //遍历出entrys里面的数据
        for (int i = 0; i < jsonArray.size(); i++) {
            JSONObject entry = jsonArray.getJSONObject(i);
            System.out.println(entry);
            //根据具体的key取值
            String position = entry.getString("position");
            System.out.println("取出对应的值:"+position);
        }

输出效果:

记下心得

相关文章:

  • HTML 表格的详细介绍与应用
  • 【Pyqt5】水平布局与垂直布局及其交叉展示及实战音乐播放器UI
  • Unity3D开发AI桌面精灵/宠物系列 【一】 窗口透明化 背景剔除 、去边框、去Logo动画UI正常显示
  • centos 换阿里云yum
  • win11设置右键完整菜单
  • 重塑教育体验:教育行业软件UI界面设计的创新策略
  • Compose 实践与探索八 —— LayoutModifier 解析
  • C++能力测试题
  • 大模型推理:LM Studio在Mac上部署Deepseek-R1模型
  • 散货拼柜业务痛点有哪些?货代公司如何通过散拼系统提高效率?
  • Sqlmap注入工具简单解释
  • 差分专题练习 ——基于罗勇军老师的《蓝桥杯算法入门C/C++》
  • 什么是 MyBatis?
  • 【CXX】6.7 SharedPtr<T> — std::shared_ptr<T>
  • 1140:验证子串--next.data()、KMP和find
  • 使用yolov8+flask实现精美登录界面+图片视频摄像头检测系统
  • 代理模式的C++实现示例
  • 15.使用读写包操作Excel文件:OpenPyXL 包
  • 麒麟系统利用pycharm生成deb文件
  • 树莓派上的 TensorFlow Lite:从零开始的摄像头图像识别
  • 马上评|房屋“注胶堵漏”骗局何以屡屡得逞
  • 巴基斯坦外长访华是否与印巴局势有关?外交部:此访体现巴方高度重视中巴关系
  • 优质文化资源下基层,上海各区优秀群文团队“文化走亲”
  • IPO周报|本周2只新股申购,比亚迪、上汽“小伙伴”来了
  • 西浦国际教育创新论坛举行,聚焦AI时代教育本质的前沿探讨
  • 解放日报:“感觉全世界人都在上海买买买”