springboot + easypoi3.2 根据模板或者自定义导出多sheet

本文介绍了如何使用SpringBoot和Easypoi3.2库来实现Excel的多sheet页导出。首先讲解了基于模板的方式,强调了模板语法中首列不加't'的重要性。然后,展示了自定义表头导出多sheet的代码实现,并指出了关键点。
摘要由CSDN通过智能技术生成

一、根据模板导出多sheet页

1、excel 模板

2、模板的语法,首列不加t 

空格分割
三目运算 {
  {test ? obj:obj2}}
n: 表示 这个cell是数值类型 {
  {n:}}
le: 代表长度{
  {le:()}} 在if/else 运用{
  {le:() > 8 ? obj1 : obj2}}
fd: 格式化时间 {
  {fd:(obj;yyyy-MM-dd)}}
fn: 格式化数字 {
  {fn:(obj;###.00)}}
fe: 遍历数据,创建row
!fe: 遍历数据不创建row
$fe: 下移插入,把当前行,下面的行全部下移.size()行,然后插入
#fe: 横向遍历
v_fe: 横向遍历值
!if: 删除当前列 {
  {!if:(test)}}
单引号表示常量值 '' 比如'1' 那么输出的就是 1
&NULL& 空格
]] 换行符 多行遍历导出
sum: 统计数据
整体风格和el表达式类似,大家应该也比较熟悉
采用的写法是{
  {}}代表表达式,然后根据表达式里面的数据取值

3、导出代码

@Test
    public void fe_map() throws Exception {
        try {
            TemplateExportParams params = new TemplateExportParams(
                    "F:\\model.xlsx");
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("ajdh", "2014-12-25");
            List<Map<String, String>> listMap = new ArrayList<Map<String, String>>();
            for (int i = 0; i < 4; i++) {
                Map<String, String> lm = new HashMap<String, String>();
                lm.put("xh", i + 1 + "");
                lm.put("wh", i * 10000 + "");
                lm.put("zrz", "A001");
                lm.put("tm", "设计");
                lm.put("rq", "EasyPoi " + i + "期");
                lm.put("bgqx", "开源项目");
                lm.put
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值