groovy 从jsonList中读取某个字段
今天又被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中读取某个字段的更多相关文章
- EF调用存储过程查询表中的部分字段,报数据读取器与指定的“AdventureWorksDWModel.Student”不兼容。某个类型为“Age”的成员在同名的数据读取器中没有对应的列。
实现功能:查询单张表Student中返回指定的列 一:数据库表结构: 二:存储过程: USE [AdventureWorksDW] GO /****** Object: StoredProcedure ...
- Python脚本连接数据库读取特定字段保存在文件中
从Script表中取出Description字段作为文件名,并按协议将脚本归位相同的文件夹,取TestScript字段的内容写入文件 import MySQLdb import sys import ...
- wpf读取mysql字段类型为text的问题
在读取数据库中的字段时,可能会根据环境的不同导致一些字段的读取方式不尽相同,在sql数据库中读取字段值用的最多的算是dataTable.Rows[行][列],但是到了mysql中就会有一些差别,在fl ...
- C#更新SQLServer中的TimeStamp字段(时间戳) 防止同时修改一行时覆盖更新
C#更新SQLServer中的TimeStamp字段(时间戳) 分类: C#2012-10-24 15:10 1878人阅读 评论(0) 收藏 举报 public partial class Form ...
- java 如何从配置文件(.properties)中读取内容
1.如何创建.properties文件 很简单,建立一个txt文件,并把后缀改成.properties即可 2.将.properties文件拷入src的根目录下 3..properties文件内容格式 ...
- [小技巧][ASP.Net MVC Hack] 使用 HTTP 报文中的 Header 字段进行身份验证
在一些 Web 系统中,身份验证是依靠硬件证书进行的:在电脑上插入 USB 证书,浏览器插件读取证书的相关信息,然后在发送 HTTP 登录请求时顺便在 Header 字段附加上身份信息.服务器端处理这 ...
- C#从SQL server数据库中读取l图片和存入图片
原文:C#从SQL server数据库中读取l图片和存入图片 本实例主要介绍如何将图片存入数据库.将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStr ...
- HTTP 报文中的 Header 字段进行身份验证
[小技巧][ASP.Net MVC Hack] 使用 HTTP 报文中的 Header 字段进行身份验证 在一些 Web 系统中,身份验证是依靠硬件证书进行的:在电脑上插入 USB 证书,浏览器插件读 ...
- ABAP POH和POV事件中 获得屏幕字段的值
在Screen显示之前,系统会自动将程序变量值放到屏幕字段中:在PAI事件中,系统会自动将屏幕字段的值更新到相应的程序变量. 在Screen Logic中我们还有POH和POV事件,所以有时需要调用函 ...
随机推荐
- Javascript中的对象(八)
一.如何编写可以计算的对象的属性名 我们都知道对象的属性访问分两种,键访问(["属性名"])和属性访问(.属性名,遵循标识符的命名规范) 对于动态属性名可以这样 var prefi ...
- Visual Studio 2010 Shortcut
General Shortcut Description Ctrl-X or Shift-Delete Cuts the currently selected item to the clipboar ...
- Kubernetes1.8以后kubelet连接api-server问题
Kubernetes1.8以后版本,kubelet命令去掉--api-servers选项,参考官方kubelet 1.8 --kubeconfig string Path to a kubeconfi ...
- 阿里云ECS专有网络下安装flannel注意事项
参照文章http://www.cnblogs.com/lyzw/p/6016789.html在两台阿里云ECS主机安装与配置flannel,在专有网络下两台主机只能通过公网ip连通,所以flannel ...
- openstack处理booting from hard disk
当你的实例启动出现如下报错的处理方式: 需要编辑/etc/nova/nova.conf [libvirt] cpu_mode = none virt_type=qemu 修改后需要 ...
- [UE4]函数分组
函数分组相当于C#里面的“#region #end region”折叠注释
- virtualbox创建虚拟机
两种方式: 1.使用.vdi硬盘镜像文件 2.使用操作系统新建 方法1: #结束! 方法2:
- U3D学习005——输入操作
1.input管理器 edit-project settings-input 2.getaxis——虚拟轴获取 获取水平和垂直的输入和其他输入(input管理器中定义的) 3.对象的transform ...
- Android重打包+重新签名工具Apktool Box
可实现apk反编译+重新打包+重新签名,界面如下 : 部分引用自开源代码:http://github.com/Bu4275/AutoAPKTool
- C# DataGridView导出Excel
using Microsoft.Office.Interop.Excel; using Excel=Microsoft.Office.Interop.Excel; //这 ...