当前位置: 首页 > 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);
        }

输出效果:

记下心得

http://www.dtcms.com/a/68791.html

相关文章:

  • 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:从零开始的摄像头图像识别
  • 深入解析 React Diff 算法:原理、优化与实践
  • 如何逐步迭代衍生出一个网络安全产品
  • Podman 运行redis 报错
  • 警惕!Ollama大模型工具的安全风险及应对策略
  • DataWhale 大语言模型 - GPT和DeepSeek模型介绍
  • Android Studio搭建环境并运行项目
  • Debain-12.9使用xinference部署重排模型/rerank
  • 程序编译生成的文件
  • 面试常见概念区分:并发与并行、同步与异步、阻塞与非阻塞、线程同步与互斥
  • 【MySQL】基本操作 —— DML 与约束