今天又被groovy的高效吓到了。

想提取所有的itemCodes,两种玩法

一、常规方法:遍历组装

RestResult items = getListPager()
def temp = []
items.data.data.each {
temp.push(it.itemCode)
}
println(temp)

[DP180929155952858, DP180511114211610, DP1539683378800, DP1539682576227, DP1539681917164, DP1539681882632, DP1539681460929, DP1539681297697, DP1539679354755]

二、直接拿值,简直不能再高效了

RestResult items = getListPager()
def itemCodes = items.data.data.itemCode
println(itemCodes)

[DP180929155952858, DP180511114211610, DP1539683378800, DP1539682576227, DP1539681917164, DP1539681882632, DP1539681460929, DP1539681297697, DP1539679354755]

{
"code" : "ok",
"data" : {
"data" : [ {
"itemCode" : "DP180929155952858",
"itemName" : "成本测试专用-勿动",
"itemType" : "SINGLE",
"itemTypeName" : "单品",
"purchaseSpecName" : "箱",
"tax" : 1
}, {
"itemCode" : "DP180511114211610",
"itemName" : "百事",
"itemType" : "SINGLE",
"itemTypeName" : "单品",
"purchaseSpecName" : "箱",
"tax" : 1
}, {
"itemCode" : "DP1539683378800",
"itemName" : "自动合成品20181016164446",
"itemType" : "MATERIAL",
"itemTypeName" : "原材料",
"purchaseSpecName" : "箱",
"tax" : 1
}, {
"itemCode" : "DP1539682576227",
"itemName" : "自动合成品20181016164446",
"itemType" : "MATERIAL",
"itemTypeName" : "原材料",
"purchaseSpecName" : "箱",
"tax" : 1
}, {
"itemCode" : "DP1539681917164",
"itemName" : "自动合成品20181016164446",
"itemType" : "MATERIAL",
"itemTypeName" : "原材料",
"purchaseSpecName" : "箱",
"tax" : 1
}, {
"itemCode" : "DP1539681882632",
"itemName" : "自动合成品20181016164446",
"itemType" : "MATERIAL",
"itemTypeName" : "原材料",
"purchaseSpecName" : "箱",
"tax" : 1
}, {
"itemCode" : "DP1539681460929",
"itemName" : "自动单品20181016171741",
"itemType" : "SINGLE",
"itemTypeName" : "单品",
"purchaseSpecName" : "箱",
"tax" : 1
}, {
"itemCode" : "DP1539681297697",
"itemName" : "自动单品20181016171457",
"itemType" : "SINGLE",
"itemTypeName" : "单品",
"purchaseSpecName" : "箱",
"tax" : 1
}, {
"itemCode" : "DP1539679354755",
"itemName" : "自动原材料20181016164234",
"itemType" : "MATERIAL",
"itemTypeName" : "原材料",
"purchaseSpecName" : "箱",
"tax" : 8
} ],
"page" : {
"endPage" : 19,
"offset" : 0,
"pageNo" : 1,
"pageSize" : 20,
"totalPage" : 1,
"totalRecord" : 9
}
},
"message" : "成功"
}

groovy 从jsonList中读取某个字段的更多相关文章

  1. EF调用存储过程查询表中的部分字段,报数据读取器与指定的“AdventureWorksDWModel.Student”不兼容。某个类型为“Age”的成员在同名的数据读取器中没有对应的列。

    实现功能:查询单张表Student中返回指定的列 一:数据库表结构: 二:存储过程: USE [AdventureWorksDW] GO /****** Object: StoredProcedure ...

  2. Python脚本连接数据库读取特定字段保存在文件中

    从Script表中取出Description字段作为文件名,并按协议将脚本归位相同的文件夹,取TestScript字段的内容写入文件 import MySQLdb import sys import ...

  3. wpf读取mysql字段类型为text的问题

    在读取数据库中的字段时,可能会根据环境的不同导致一些字段的读取方式不尽相同,在sql数据库中读取字段值用的最多的算是dataTable.Rows[行][列],但是到了mysql中就会有一些差别,在fl ...

  4. C#更新SQLServer中的TimeStamp字段(时间戳) 防止同时修改一行时覆盖更新

    C#更新SQLServer中的TimeStamp字段(时间戳) 分类: C#2012-10-24 15:10 1878人阅读 评论(0) 收藏 举报 public partial class Form ...

  5. java 如何从配置文件(.properties)中读取内容

    1.如何创建.properties文件 很简单,建立一个txt文件,并把后缀改成.properties即可 2.将.properties文件拷入src的根目录下 3..properties文件内容格式 ...

  6. [小技巧][ASP.Net MVC Hack] 使用 HTTP 报文中的 Header 字段进行身份验证

    在一些 Web 系统中,身份验证是依靠硬件证书进行的:在电脑上插入 USB 证书,浏览器插件读取证书的相关信息,然后在发送 HTTP 登录请求时顺便在 Header 字段附加上身份信息.服务器端处理这 ...

  7. C#从SQL server数据库中读取l图片和存入图片

    原文:C#从SQL server数据库中读取l图片和存入图片 本实例主要介绍如何将图片存入数据库.将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStr ...

  8. HTTP 报文中的 Header 字段进行身份验证

    [小技巧][ASP.Net MVC Hack] 使用 HTTP 报文中的 Header 字段进行身份验证 在一些 Web 系统中,身份验证是依靠硬件证书进行的:在电脑上插入 USB 证书,浏览器插件读 ...

  9. ABAP POH和POV事件中 获得屏幕字段的值

    在Screen显示之前,系统会自动将程序变量值放到屏幕字段中:在PAI事件中,系统会自动将屏幕字段的值更新到相应的程序变量. 在Screen Logic中我们还有POH和POV事件,所以有时需要调用函 ...

随机推荐

  1. Javascript中的对象(八)

    一.如何编写可以计算的对象的属性名 我们都知道对象的属性访问分两种,键访问(["属性名"])和属性访问(.属性名,遵循标识符的命名规范) 对于动态属性名可以这样 var prefi ...

  2. Visual Studio 2010 Shortcut

    General Shortcut Description Ctrl-X or Shift-Delete Cuts the currently selected item to the clipboar ...

  3. Kubernetes1.8以后kubelet连接api-server问题

    Kubernetes1.8以后版本,kubelet命令去掉--api-servers选项,参考官方kubelet 1.8 --kubeconfig string Path to a kubeconfi ...

  4. 阿里云ECS专有网络下安装flannel注意事项

    参照文章http://www.cnblogs.com/lyzw/p/6016789.html在两台阿里云ECS主机安装与配置flannel,在专有网络下两台主机只能通过公网ip连通,所以flannel ...

  5. openstack处理booting from hard disk

    当你的实例启动出现如下报错的处理方式:         需要编辑/etc/nova/nova.conf [libvirt] cpu_mode = none virt_type=qemu   修改后需要 ...

  6. [UE4]函数分组

    函数分组相当于C#里面的“#region #end region”折叠注释

  7. virtualbox创建虚拟机

    两种方式: 1.使用.vdi硬盘镜像文件 2.使用操作系统新建 方法1: #结束! 方法2:

  8. U3D学习005——输入操作

    1.input管理器 edit-project settings-input 2.getaxis——虚拟轴获取 获取水平和垂直的输入和其他输入(input管理器中定义的) 3.对象的transform ...

  9. Android重打包+重新签名工具Apktool Box

    可实现apk反编译+重新打包+重新签名,界面如下 : 部分引用自开源代码:http://github.com/Bu4275/AutoAPKTool

  10. C# DataGridView导出Excel

    using Microsoft.Office.Interop.Excel;                using Excel=Microsoft.Office.Interop.Excel; //这 ...