JXLS支持嵌套循环语法的数据导出说明
今天在试验用Jxls 2.0导出嵌套循环数据时,第二层数据一直没有成功,最后确认是数据源结构不正确所致,现将这两种数据格式进行说明:
假设模板中批注有这样两条循环语法:
- <jx:each(items="departments" var="department" lastCell="E10")>
- <jx:each(items="" var="department.staff" lastCell="E9")>
(1)data数据如下:
"data" : {
"departments" : [
{"chief" : {
"name" : "benny",
"age": "18",
"sex": "男",
"staff": [
{
"name" : "小王",
“age” : "10",
"sex" : "男"
},
{
"name" : "小刘",
“age” : "9",
"sex" : "女"
}
]
}},
{"chief" : {
"name" : "bien",
"age": "20",
"sex": 女",
"staff": [
{
"name" : "小花",
“age” : "12",
"sex" : "女"
},
{
"name" : "小赵",
“age” : "13",
"sex" : "男"
}
]
}}
]
}
在这个data中,虽然看起来有列表嵌套,但是要注意了,第一层departments有数据循环,而第chief没有数据循环,到第三层staff时又出现了数据循环,因此在制作模板的时候得小心了,别把第三层的数据循环当作第二层的数据循环了,若是在模板中设置了第二层的循环,那么会提示department.staff不是一个集合;若要想达到第三层循环数据也能够被正常导出,那么你可以这样设置语法:将department.staff修改为department.chief.staff即可。
(2)data数据如下:
"data" : {
"departments" : [
{
"name" : "benny",
"age": "18",
"sex": "男",
"staff": [
{
"name" : "小王",
“age” : "10",
"sex" : "男"
},
{
"name" : "小刘",
“age” : "9",
"sex" : "女"
}
]
},
{
"name" : "bien",
"age": "20",
"sex": 女",
"staff": [
{
"name" : "小花",
“age” : "12",
"sex" : "女"
},
{
"name" : "小赵",
“age” : "13",
"sex" : "男"
}
]
}
]
}
此时,data只有第一层和第二层数据循环,没有第三层的数据循环了;同时,前文中的两句语法也是正确的了,适合这种数据场景导出。
20191024 闪
JXLS支持嵌套循环语法的数据导出说明的更多相关文章
- JS 在页面上直接将json数据导出到excel,支持chrome,edge,IE10+,IE9,IE8,Safari,Firefox
JS 在页面上直接将json数据导出到excel,支持chrome,edge,IE10+,IE9,IE8,Safari,Firefox <html> <head> </h ...
- [转]SQL Server 2008支持将数据导出为脚本
本文转自:http://blog.csdn.net/studyzy/article/details/4303759 以前我们要将一个表中的数据导出为脚本,那么只有在网上找一个导出数据的Script,然 ...
- DB数据导出工具分享
一个根据数据库链接字符串,sql语句 即可将结果集导出到Excel的工具 分享,支持sqlserver,mysql. 前因 一个月前朋友找到我,让我帮忙做一个根据sql导出查询结果到Excel的工具( ...
- 涂抹mysql笔记-数据导出导入
数据导出导入<>利用CSV存储引擎加载数据:CSV存储引擎基于CSV格式文件存储数据,CSV格式是纯文本格式的文件,以逗号分隔取值.CSV引擎表的所有列值不能为空.Excel可以直接打开有 ...
- Excel催化剂开源第15波-VSTO开发之DataTable数据导出至单元格区域
上篇提到如何从Excel界面上拿到用户的数据,另外反方向的怎样输出给用户数据,也是关键之处. VSTO最大的优势是,这双向的过程中,全程有用户的交互操作. 而一般IT型的程序,都是脱离用户的操作,只能 ...
- 干货 | Elasticsearch、Kibana数据导出实战
1.问题引出 以下两个导出问题来自Elastic中文社区. 问题1.kibana怎么导出查询数据? 问题2:elasticsearch数据导出 就像数据库数据导出一样,elasticsearch可以么 ...
- ELK学习笔记之Elasticsearch和Kibana数据导出实战
0x00 问题引出 以下两个导出问题来自Elastic中文社区. 问题1.kibana怎么导出查询数据?问题2:elasticsearch数据导出就像数据库数据导出一样,elasticsearch可以 ...
- 第3节 sqoop:6、sqoop的数据增量导入和数据导出
增量导入 在实际工作当中,数据的导入,很多时候都是只需要导入增量数据即可,并不需要将表中的数据全部导入到hive或者hdfs当中去,肯定会出现重复的数据的状况,所以我们一般都是选用一些字段进行增量的导 ...
- 【基于WinForm+Access局域网共享数据库的项目总结】之篇二:WinForm开发扇形图统计和Excel数据导出
篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...
随机推荐
- 死磕Lambda表达式(一):初识Lambda
弱小和无知不是生存的障碍,傲慢才是.--<三体> 什么是Lambda表达式 Lambda表达式是表示可传递匿名函数的一种简洁方式,Lambda表达式没有名称,但是有参数列表.函数主体.返回 ...
- 08.JS单词整理
以下为按照文章顺序简单整理的JS单词, 注意:是JS单词注释,部分与英文不符 01.JS语法规范.变量与常量 console——控制台 log——日志 var——变量 variable变量,变化 co ...
- SAP 事务代码 ME31K 报错 - 不含来自带工厂分配的供应商的物料的采购没有被定义 -
SAP 事务代码 ME31K 报错 - 不含来自带工厂分配的供应商的物料的采购没有被定义 - 近日收到业务团队的报错说,试图创建合同,报错如下: 不含来自带工厂分配的供应商的物料的采购没有被定义 这个 ...
- LeetCode 面试题 02.07. 链表相交
题目链接:https://leetcode-cn.com/problems/intersection-of-two-linked-lists-lcci/ 给定两个(单向)链表,判定它们是否相交并返回交 ...
- Java学习随笔---常用API(二)
Object类的toString方法 将一个对象返回为字符串形式,但一般使用的时候会覆盖重写toString方法 Object类是所有类的父亲 // public class Person { pri ...
- exp导出含有双引号的表
由于ORACLE默认的表名都是不区分大小写,在创建表时,在数据字典中存储的表名为大写.在有些情况下,如果创建的表在表名上加上双引号("),则创建的表其表名在数据字典中不作转换.比如 SQL& ...
- Docker Compose 启动mysql,redis,rabbitmq
这里使用的centos7,首先切换到root. sudo -s 首先去设置下载镜像,否则下载这三个东西要很久,而且可能失败. vim /etc/docker/daemon.json 内容如下: { & ...
- 图片上传的进度条-jquery
<div style="padding: 10px;"> <div class="progress-bar" style="disp ...
- H5_0026:使用CSS里的user-select属性控制用户在页面上选中的内容
CSS里的user-select属性用来禁止用户用鼠标在页面上选中文字.图片等,也就是,让页面内容不可选.也可以只允许用户选中文字,或者全部都放开,用户可以同时选中文字.还包括文本里的图片.视频等其它 ...
- Don't assign one object to another one
correct way, when changing object, firstly you should create this object and then assign its propert ...