**
java基于HuTool工具类ExcelWriter合并单元格
**
1.基于HuTool工具类ExcelWriter合并单元格并且使用 jdk1.8 lambda表达式
效果如下:
用姓名和编码相同的数据进行合并单元格
1.创建实体类
代码如下
import lombok.Data;
import javax.persistence.Column;
import java.io.Serializable;
import java.sql.Timestamp;
@Data
public class HeatOrderDto implements Serializable {
/** 姓名 */
private String staffNo;
/** 编码 */
private String terminalNumber;
/** 时间1 */
private Timestamp payOrderDate;
/** 时间2 */
private Timestamp createDate;
/** 备注 */
private String trxCode;
}
2.导出步骤
- 查找数据库返回数据list: List heatOrderDtos
- 设置导出表头数据
- 用lambda表达式获取staffNo字段分组数据:staffNoGroupMaps
- 遍历数据,设置合并规则:
- 获取terminalNumber字段分组数据:terminalNumberGroupMaps,设置合并规则
- 将数据保存在list中
- ExcelWriter导出excel文件
- 代码如下:
public void downloadDayReport(List<HeatOrderDto> heatOrderDtos, HttpServletResponse response) throws IOException {
//定义基础数据
List<String> rowHead = CollUtil.newArrayList("姓名", "编码", "时间1", "时间2", "备注");
ExcelWriter writer = ExcelUtil.getBigWriter