EasyExcel将数据库里面的数据生成excel文件

EasyExcel官方文档


1.在model模块导入依赖

<!--        生成报表-->
<dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>4.0.3</version>
</dependency>

2.修饰实体类

package com.gmgx.vo;import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;import java.math.BigDecimal;
import java.util.Date;@Data
public class ExcelVo {@ExcelProperty({"订单报表", "订单id"})private String id;/*** 订单状态 1待付款,2待派送,3待取餐,4已派送,5已完成,6已取消,7待审批*/@ExcelProperty({"订单报表", "订单状态"})private String status;@ExcelProperty({"订单报表", "下单用户id"})private String memberId;//TODO:根据memberId获取下单用户的名字//    @ExcelProperty("下单用户")//    private String memberName;@ExcelProperty({"订单报表", "店铺id"})private String shopId;//TODO:根据shopId获取店铺的名字//    @ExcelProperty("店铺名")//    private String shopName;@ExcelProperty({"订单报表", "下单时间"})private Date orderTime;@ExcelProperty({"订单报表", "结账时间"})private Date checkoutTime;/*** 支付方式 1微信,2支付宝*/@ExcelProperty({"订单报表", "支付方式"})private String payMethod;@ExcelProperty({"订单报表", "实收金额"})private BigDecimal amount;@ExcelProperty({"订单报表", "备注"})private String remark;@ExcelProperty({"订单报表", "收件人手机号"})private String phone;@ExcelProperty({"订单报表", "收件地址"})private String address;@ExcelProperty({"订单报表", "收货人姓名"})private String consignee;/*** 0-外卖 1-堂食*/@ExcelProperty({"订单报表", "就餐方式"})private String type;@ExcelProperty({"订单报表", "取消下单原因(用户端)"})private String cancelReasonMember;@ExcelProperty({"订单报表", "取消下单原因(管理端)"})private String cancelReason;@ExcelProperty({"订单报表", "商家拒单原因"})private String rejectionReason;@ExcelProperty({"订单报表", "商家拒绝用户取消订单的原因"})private String rejectCancelReason;
}

3.写业务代码

@Override
public Boolean exportExcel() {List<Orders> orderList = this.list();String fileName = "baoder-订单报表-" + sdf4Excel.format(System.currentTimeMillis()) + ".xlsx";ArrayList<ExcelVo> excelVo = new ArrayList<>();for (Orders order : orderList) {ExcelVo excelItem = new ExcelVo();excelItem.setId(order.getId());switch (order.getStatus()) {case 1:excelItem.setStatus("待付款");break;case 2:excelItem.setStatus("待派送");break;case 3:excelItem.setStatus("待取餐");break;case 4:excelItem.setStatus("已派送");break;case 5:excelItem.setStatus("已完成");break;case 6:excelItem.setStatus("已取消");break;case 7:excelItem.setStatus("待审批");break;}excelItem.setMemberId(order.getMemberId());excelItem.setShopId(order.getShopId());excelItem.setOrderTime(order.getOrderTime());excelItem.setCheckoutTime(order.getCheckoutTime());excelItem.setPayMethod(1 == (order.getPayMethod()) ? "微信" : "支付宝");excelItem.setAmount(order.getAmount());excelItem.setRemark(order.getRemark());excelItem.setPhone(order.getPhone());excelItem.setAddress(order.getAddress());excelItem.setConsignee(order.getConsignee());excelItem.setType("0".equals(order.getType()) ? "外卖" : "堂食");excelItem.setCancelReasonMember(order.getCancelReasonMember());excelItem.setCancelReason(order.getCancelReason());excelItem.setRejectionReason(order.getRejectionReason());excelItem.setRejectCancelReason(order.getRejectCancelReason());excelVo.add(excelItem);}// 这里 需要指定写用哪个class去写,然后写到第一个sheet,名字为模板 然后文件流会自动关闭// 如果这里想使用03 则 传入excelType参数即可EasyExcel.write(fileName, ExcelVo.class).sheet("模板").doWrite(excelVo);return true;
}

*******************************************************************

访问接口

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/147680.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

四叉树碰撞代码

使用raylib 代码来源 https://github.com/seyhajin/flux-samples/blob/master/raylib/quadtree/quadtree.c 原来是视锥碰撞四叉树&#xff0c;经过一周开发变成碰撞检测四叉树可视化 后经过改写 绿色检测 灰色检测 //https://github.com/seyhajin/flux-samples/blob/mast…

【C++篇】走进C++标准模板库:STL的奥秘与编程效率提升之道

文章目录 C STL 初探&#xff1a;打开标准模板库的大门前言第一章: 什么是STL&#xff1f;1.1 标准模板库简介1.2 STL的历史背景1.3 STL的组成 第二章: STL的版本与演进2.1 不同的STL版本2.2 STL的影响与重要性 第三章: 为什么学习 STL&#xff1f;3.1 从手动编写到标准化解决方…

three.js 让阴影更黑更暗

r166 可以通过设置intensity属性来配置每个光源的阴影强度 light.shadow.intensity 3;或者 修改shader THREE.ShaderChunk["shadowmap_pars_fragment"]THREE.ShaderChunk["shadowmap_pars_fragment"].replace( "occlusion clamp( max( hard_sha…

基于深度学习的药品三期OCR字符识别

在药品生产线上,药品三期的喷码与条形码识别是保证药品追溯和安全管理的重要环节。传统的识别方法依赖于人工操作,不仅效率低下且容易出错。随着深度学习技术的不断发展,基于OCR(Optical Character Recognition,光学字符识别)的自动化识别系统逐渐成为主流。本文将以哪吒…

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-17

计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-17 1. Large Language Models in Biomedical and Health Informatics: A Review with Bibliometric Analysis H Yu, L Fan, L Li, J Zhou, Z Ma, L Xian, W Hua, S He… - Journal of Healthcare …, 2024 生物…

中国雕塑—孙溟展浅析碑帖《郑文公碑》

中国雕塑——孙溟展浅析碑帖《郑文公碑》 《郑文公碑》上碑 《郑文公碑》 下碑 《郑文公碑》是北魏摩崖刻石&#xff0c;又称是《郑羲碑》&#xff0c;属楷书体&#xff0c;此碑分两块&#xff0c;在山东平度县天柱山的那块称之为“上碑”&#xff0c;上碑全称《魏故中书令秘书…

ONNX模型部署利器ONNXRUNTIME框架

1.ONNXRUNTIME介绍 ONNX格式模型部署兼容性最强的框架 ONNXRUNTIME&#xff0c;基本上不会有算子不支持跟不兼容的情况出现&#xff0c;只要能导出ONNX格式模型&#xff0c;它基本上都能成功加载&#xff0c;成功推理。虽然在CPU速度不及OpenVINO、GPU上速度不及TensorRT&#…

RK3588NPU驱动版本升级至0.9.6教程

RK3588NPU驱动版本升级至0.9.6教程 1、下载RK3588NPU驱动2、修改NPU驱动源码2.0 修改MONITOR_TPYE_DEV写错问题2.1 解决缺少函数rockchip_uninit_opp_table问题2.2 解决缺少函数vm_flags_set、vm_flag_clear的问题2.3 内核编译成功2.4 重新构建系统 3、注意事项4、其他问题处理…

智谱清影的魅力:使用CogVideoX-2b生成6秒视频的真实体验!

文章目录 1 3D变分自编码器与3D RoPE2 精确描述与多样化输入3 社区的力量与未来展望 在8月6日&#xff0c;智谱 AI 发布了一则令人振奋的消息&#xff1a;他们决定开源其视频生成模型CogVideoX。 1 3D变分自编码器与3D RoPE 作为一名开发者&#xff0c;我近期才来体验这个新工…

【C++】面向对象编程的三大特性:深入解析继承机制

C语法相关知识点可以通过点击以下链接进行学习一起加油&#xff01;命名空间缺省参数与函数重载C相关特性类和对象-上篇类和对象-中篇类和对象-下篇日期类C/C内存管理模板初阶String使用String模拟实现Vector使用及其模拟实现List使用及其模拟实现容器适配器Stack与QueuePriori…

关闭小广告【JavaScript】

在 JavaScript 中实现关闭小广告的功能&#xff0c;可以通过监听点击事件来隐藏广告元素。 实现效果&#xff1a; 代码&#xff1a; <!DOCTYPE html> <html lang"zh"><head><meta charset"UTF-8"><meta name"viewport&q…

IP地址免费SSL证书建议使用吗?

IP地址免费SSL证书的现状 市场情况&#xff1a;目前市面上并没有免费的IP地址SSL证书。即使有少数机构提供所谓的“免费”证书&#xff0c;也可能存在功能限制、有效期短、技术支持不足等问题。 提供机构&#xff1a;尽管没有完全的免费选项&#xff0c;但可以选择一些可信赖的…

基于51单片机的简易8层电梯模拟proteus仿真

地址&#xff1a;https://pan.baidu.com/s/1z4SBpi2yb8Qeu-85jqkuZQ 提取码&#xff1a;1234 仿真图&#xff1a; 芯片/模块的特点&#xff1a; AT89C52/AT89C51简介&#xff1a; AT89C52/AT89C51是一款经典的8位单片机&#xff0c;是意法半导体&#xff08;STMicroelectron…

实用为主,需求为王!通风天窗专业厂家谈谈通风天窗怎么选?

通风天窗作为现代建筑的重要组成部分&#xff0c;不仅能够有效改善室内空气质量&#xff0c;还能增强建筑的自然采光与美观性。市场上通风天窗种类繁多&#xff0c;品质参差不齐&#xff0c;如何选购一款既满足功能需求又性价比高的产品&#xff0c;成为业主关注的焦点。成都昱…

图为科技大模型一体机,智领未来社区服务

当AI与边缘计算相遇&#xff0c;一幅关于智慧生活的宏伟蓝图正缓缓展开。 今天&#xff0c;让我们一同探索&#xff0c;如何通过图为大模型一体机&#xff0c;为物业服务插上智能的翅膀。 通过整合采集物业数据&#xff0c;大模型一体机可全方位为物业行业赋能&#xff0c;实…

【SpringBoot详细教程】-02-SpringBoot配置【持续更新】

Hello&#xff01;彦祖们&#xff0c;从今天开始我将更新一波超详细的SpringBoot的图文教程&#xff0c;感兴趣的老铁给个关注点赞 支持一下呗&#xff0c;最好再评论一个666&#xff0c;O(∩_∩)O哈哈~&#xff08;贪心了&#xff09; 点个关注吧 02. SpringBoot配置 Sprin…

图像放大效果示例【JavaScript】

实现效果&#xff1a; 当鼠标悬停在小图&#xff08;缩略图&#xff09;上时&#xff0c;大图&#xff08;预览图&#xff09;会随之更新为相应的小图&#xff0c;并高亮当前悬浮的小图的父元素。 代码&#xff1a; 1. HTML部分 <!DOCTYPE html> <html lang"z…

[Excel VBA]如何使用VBA自动生成图表

在Excel中&#xff0c;图表是可视化数据的重要工具。以下是一个VBA代码示例&#xff0c;帮助你自动生成图表。 1. 代码说明 该代码会根据指定数据范围创建一个柱状图&#xff0c;并设置图表的基本属性。 2. VBA代码 Sub CreateChart()Dim ws As WorksheetDim chartObj As Ch…

转行要趁早!网络安全岗人才稀缺,前景广阔,零基础入门到精通,收藏这篇就够了

1 网络安全从业人员能力基本要求&#xff0c;您达标了吗&#xff1f; 引导 根据国家市场监督管理总局、国家标准化管理委员会发布中华人民共和国国家标准公告&#xff08;2023年第1号&#xff09;&#xff0c;由全国信息安全标准化技术委员会归口的《信息安全技术 网络安全从业…

考题抄错会做也白搭——模板方法模式

文章目录 考题抄错会做也白搭——模板方法模式选择题不会做&#xff0c;蒙呗&#xff01;重复易错难改提炼代码模板方法模式模板方法模式的特点 考题抄错会做也白搭——模板方法模式 选择题不会做&#xff0c;蒙呗&#xff01; 时间&#xff1a;3月27日19点  地点&#xff…