EasyPoi 导入导出Excel时使用GroupName的踩坑解决过程
一、开发功能介绍: 简单的一个excel导入功能
二、Excel导入模板(大致模板没写全):
| 姓名 | 性别 | 生日 | 客户分类 | 联系人姓名 | 联系人部门 | 备注 | ||
| 材料 | 综合 | 采购 | ||||||
| 张三 | 男 | 1994/05/25 | 1 | 1 | 1 | 张三 | 开发部 | |
| 李四 | 男 | 1994/05/25 | 1 | 1 | 1 | 张三 | 开发部 | |
| 王五 | 男 | 1994/05/25 | 1 | 1 | 1 | 张三 | 开发部 | |
| 周六 | 男 | 1994/05/25 | 1 | 1 | 1 | 张三 | 开发部 | |
三、实体类注解:按照如下注解使用官网提供的导入导出方法即可实现功能。
package com.adc.da.customerresourcemanage.dto; import cn.afterturn.easypoi.excel.annotation.Excel;
import com.adc.da.base.entity.BaseEntity;
import lombok.Data; import java.util.Date; @Data
public class ContactsDto extends BaseEntity { /**企业名称-外键 **/
@Excel(name = "企业名称",orderNum = "1")
private String enterpriseName;
/** 姓名 **/
@Excel(name = "姓名",orderNum = "2")
private String contactsUsname;
/** 部门 **/
@Excel(name = "部门",orderNum = "3")
private String departName;
/** 子部门 **/
@Excel(name = "子部门",orderNum = "4")
private String childDepartName;
/** 职务 **/
@Excel(name = "职务",orderNum = "5")
private String contactsPost;
/** 性别 **/
@Excel(name = "性别",orderNum = "6")
private String contactsSex;
/** 手机 **/
@Excel(name = "手机",orderNum = "7")
private String contactsPhone;
/** 座机 **/
@Excel(name = "座机",orderNum = "8")
private String contactsLandline;
/** 邮箱 **/
@Excel(name = "邮箱",orderNum = "9")
private String contactsEmail;
/** 家庭住址 **/
@Excel(name = "家庭地址",orderNum = "10")
private String contactsHomeaddress;
/** 生日 **/
@Excel(name = "生日",orderNum = "11",format = "yyyy/MM/dd")
private Date contactsBirthday;
/** 籍贯 **/
@Excel(name = "籍贯",orderNum = "12")
private String contactsBirthplace;
/** 毕业院校 **/
@Excel(name = "毕业院校",orderNum = "13")
private String contactsSchool;
/** 影响力名称 **/
@Excel(name = "影响力",orderNum = "14")
private String effectName;
/**亲密度名称 **/
@Excel(name = "亲密度",orderNum = "15")
private String intimacyName;
/** 录入日期 **/
@Excel(name = "录入时间",orderNum = "16")
private Date createTime;
/** 录入人姓名 **/
@Excel(name = "录入人",orderNum = "17")
private String createUserName;
/** 材料 **/
@Excel(name = "材料",orderNum = "18",groupName = "客户分类",fixedIndex = 17)
private String stuff;
/** 评价 **/
@Excel(name = "评价",orderNum = "19",groupName = "客户分类",fixedIndex = 18)
private String evaluate;
/** 市场 **/
@Excel(name = "市场",orderNum = "20",groupName = "客户分类",fixedIndex = 19)
private String market;
/** 法规 **/
@Excel(name = "法规",orderNum = "21",groupName = "客户分类",fixedIndex = 20)
private String statute;
/** 认证**/
@Excel(name = "认证",orderNum = "22",groupName = "客户分类",fixedIndex = 21)
private String authentication;
/** 智能**/
@Excel(name = "智能",orderNum = "23",groupName = "客户分类",fixedIndex = 22)
private String intelligence;
/**综合**/
@Excel(name = "综合",orderNum = "24",groupName = "客户分类",fixedIndex = 23)
private String comprehensive;
/** 采购 **/
@Excel(name = "采购",orderNum = "25",groupName = "客户分类",fixedIndex = 24)
private String purchase;
/**财务 **/
@Excel(name = "财务",orderNum = "26",groupName = "客户分类",fixedIndex = 25)
private String finance;
/** 联系人姓名 **/
@Excel(name = "联系人姓名",orderNum = "27",fixedIndex = 26)
private String conUsname;
/** 联系人部门 **/
@Excel(name = "联系人部门",orderNum = "28")
private String conDepartName;
/** 联系人职务 **/
@Excel(name = "联系人职务",orderNum = "29")
private String conPost;
/**联系方式 **/
@Excel(name = "联系方式",orderNum = "30")
private String conPhone;
/**联系邮箱 **/
@Excel(name = "联系邮箱",orderNum = "31")
private String conEmail;
/** 备注 **/
@Excel(name = "备注",orderNum = "32")
private String remark;
}
四、过程中遇到的坑
注解只写 @Excel(name = "综合",orderNum = "24",groupName = "客户分类"),导入的时候,在分组结束后字段联系人姓名的值无法获取。网上百度了好多方法也没有找到原因所在,官网联系也没有得到原因。
所以根据官网的属性介绍,添加了fixedIndex属性,固定死列数,亲测可以解决这个问题,但是这里要注意 fixedIndex必须从0开始,否则会错位获取。
好了,大概就写到这里,如果有遇到以上和我一样的问题,并且有更好的解决方式,欢迎留言评论,一起成长,谢谢各位大佬的指点!
EasyPoi 导入导出Excel时使用GroupName的踩坑解决过程的更多相关文章
- EasyPOI导入导出Excel
EasyPOI工具可以方便的写出Excel导出,Excel模板导出,Excel导入,Word模板导出,通过简单的注解和模板 导入maven依赖 <dependency> <group ...
- PHP导出excel时数字变为科学计数的解决方法
在数据导出到excel时数字格式不对,一般分为以下两种情况. 1.excel单元格设置长度不够 解决方法: //在excel.php文件中 $objActSheet = $objPHPExcel-&g ...
- thinkphp导入导出excel表单数据
在PHP项目经常要导入导出Excel表单. 先去下载PHPExcel类库文件,放到相应位置. 我在thinkphp框架中的位置为ThinkPHP/Library/Org/Util/ 导入 在页面上传e ...
- 导入导出Excel工具类ExcelUtil
前言 前段时间做的分布式集成平台项目中,许多模块都用到了导入导出Excel的功能,于是决定封装一个ExcelUtil类,专门用来处理Excel的导入和导出 本项目的持久化层用的是JPA(底层用hibe ...
- Java利用POI导入导出Excel中的数据
首先谈一下今天发生的一件开心的事,本着一颗android的心我被分配到了PB组,身在曹营心在汉啊!好吧,今天要记录和分享的是Java利用POI导入导出Excel中的数据.下面POI包的下载地 ...
- jxl导入/导出excel
1.jxl导入/导出excel案例,黏贴即可运行 package junit.test; import java.io.File; import java.io.IOException; import ...
- C#导入导出Excel表的数据
一:C#导入导出EXCEL文件的类 代码如下: 首先将Microsoft Excel 14.0 Object Library 引用导入 using System; using System.Data; ...
- 导入导出Excel的Java工具类ExcelUtil
在编写ExcelUtil之前,在网上查了一些资料.java中用来处理Excel的第三方开源项目主要就是POI和JXL.poi功能强大,但是比较耗资源,对于大数据量的导入导出性能不是太好:jxl功能简单 ...
- jxl导入/导出excel(网上的案例)
jxl导入/导出excel 1.jxl导入/导出excel案例,黏贴即可运行 package junit.test; import java.io.File; import java.io.IOExc ...
随机推荐
- Mayor's posters POJ - 2528 线段树(离散化处理大数?)
题意:输入t组数据,输入n代表有n块广告牌,按照顺序贴上去,输入左边和右边到达的地方,问贴完以后还有多少块广告牌可以看到(因为有的被完全覆盖了). 思路:很明显就是线段树更改区间,不过这个区间的跨度有 ...
- Web Scraper 性能测试 (-_-)
刚在研究 Python 爬虫的时候,看到了个小白工具,叫 Web Scraper,于是来测试下好不好用. Web Scraper 是什么? 它是一个谷歌浏览器的插件, 用于批量抓取网页信息, 主要特点 ...
- Python python 五种数据类型--字典
# 定义一个字典 var1 = {'a':20,'b':40}; var2 = dict(); print(type(var1)) print(type(var2)) # 长度 length = le ...
- thinkphp5源码剖析系列1-类的自动加载机制
前言 tp5想必大家都不陌生,但是大部分人都停留在应用的层面,我将开启系列随笔,深入剖析tp5源码,以供大家顺利进阶.本章将从类的自动加载讲起,自动加载是tp框架的灵魂所在,也是成熟php框架的必备功 ...
- MySQL常用存储引擎:MyISAM与InnoDB之华山论剑
一 MyISAM 1.1 MyISAM简介 MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的 ISAM (Indexed Sequential Access Method:有索引的顺 ...
- [HOJ2662]Pieces Assignment<状态压缩dp>
描述: 有一个n*m的棋盘(n.m≤80,n*m≤80)要在棋盘上放k(k≤20)个棋子,使得任意两个棋子不相邻(每个棋子最多和周围4个棋子相邻).求合法的方案总数. 输入: 本题有多组测试数据,每组 ...
- Python中的编码及操作文件
------------恢复内容开始------------ 1,字符编码 ASCII 用1个字符来表示所有的英文字母和特殊符号 GB2313(GBK)用2个字符来表示英文字母及中文字符,且决定如果 ...
- 程序开发中的术语,如IDE,OOP等等
我们在开发程序过程中,会用到一些与编译有关的术语,比如:[编辑器.编译器.调试器.连接器,链接器.解释器,集成开发环境(Integrated Development Environment,IDE). ...
- STM32F103ZET6串口通信
1.电平标准 根据通讯使用的电平标准不同,串口通讯可分为TTL标准和RS-232标准,如下表: 从图中可以看到,TTL电平标准使用5V表示高电平,使用0V表示低电平.在R232电平标准中,为了增加串口 ...
- WireShark数据包分析一:认识WireShark
一.认识WireShark WireShark是一款抓包软件,官方网址:WireShark.org 官网如下图: 选择Download,在官网下载安装WireShark即可. WireShark可用来 ...