今天又被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. solr4.9+tomcat7 multiCore

    ES不支持groupby,于是想看看solr怎么实现的. 搭建环境: 1)下载tomcat7.solr4.9,解压: 2)配置tomcat7的端口和URIEncoding(utf-8): 3)拷贝so ...

  2. vagrant在windows下的安装和配置

    记录一下安装和配置过程中的一些坑步骤一分别下载vagrant和VirtualBox,我这里下载的是vagrant_1.9.1.msi 和 VirtualBox-5.1.14-112924-Win.ex ...

  3. C#使用MapReduce实现对分片数据的分组

    事由:mongodb已经进行数据分片,这样就不能使用一些方法就不能使用,例如eval,$group如果尝试使用mongodb会提示 Error: { , "errmsg" : &q ...

  4. Flume的Source

    source学习网址: http://flume.apache.org/FlumeUserGuide.html 一.Avro 类型的Source 监听Avro 端口来接收外部avro客户端的事件流.和 ...

  5. [转][html]设置IIS 默认页

    <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.we ...

  6. [转][C#]WebAPI 必需 Dll

  7. Android应用启动会白屏一下的解决办法

    设置透明样式,如下:<activity android:name="com.hongfans.cvi.ui.MainActivity" android:configChang ...

  8. utf8_unicode_ci、utf8_general_ci区别

    摘录一下Mysql 5.1中文手册中关于utf8_unicode_ci与utf8_general_ci的说明:   当前,utf8_unicode_ci校对规则仅部分支持Unicode校对规则算法.一 ...

  9. [ERR] Node is not empty. Either the node already knows other nodes (check with C

    [root@node00 src]# ./redis-trib.rb add-node --slave --master-id4f6424e47a2275d2b7696bfbf8588e8c4c3a5 ...

  10. RxJava响应式编程,入门的HelloWorld;

    RxJava核心就是异步,它也被称之为响应式编程:最大的优势就是随着程序逻辑变得越来越复杂,它依然能够保持简洁. Rxjava真的是让人又爱又恨,因为它的线程切换和链式调用真的很好用,但是入门却有点难 ...