位置: IT常识 - 正文

使用EasyPoi导出Excel(easyposer怎么导出)

编辑:rootadmin
使用EasyPoi导出Excel 1、引入Java包依赖<dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-base</artifactId> <version>3.2.0</version></dependency>2、创建导出的Excel样式类:import org.apache.poi.ss.usermodel.BorderStyle;import org.apache.poi.ss.usermodel.CellStyle;import org.apache.poi.ss.usermodel.FillPatternType;import org.apache.poi.ss.usermodel.Font;import org.apache.poi.ss.usermodel.HorizontalAlignment;import org.apache.poi.ss.usermodel.IndexedColors;import org.apache.poi.ss.usermodel.VerticalAlignment;import org.apache.poi.ss.usermodel.Workbook;import cn.afterturn.easypoi.excel.export.styler.AbstractExcelExportStyler;import cn.afterturn.easypoi.excel.export.styler.IExcelExportStyler;/** * @ClassName: ExcelExportMyStylerImpl * @Description: 自定义报表导出样式,可以修改表头颜色,高度等 * @Author: sunt * @Date: 2019/8/29 21:39 * @Version 1.0 **/public class ExcelExportMyStylerImpl extends AbstractExcelExportStyler implements IExcelExportStyler { public ExcelExportMyStylerImpl(Workbook workbook) { super.createStyles(workbook); } @Override public CellStyle getTitleStyle(short color) { CellStyle titleStyle = workbook.createCellStyle(); Font font = workbook.createFont(); font.setBold(true);// 加粗 titleStyle.setFont(font); titleStyle.setAlignment(HorizontalAlignment.CENTER);// 居中 titleStyle.setVerticalAlignment(VerticalAlignment.CENTER);// 垂直居中 titleStyle.setFillForegroundColor(IndexedColors.AQUA.index);// 设置颜色 titleStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); titleStyle.setBorderRight(BorderStyle.THIN); titleStyle.setWrapText(true); return titleStyle; } @SuppressWarnings("deprecation") @Override public CellStyle stringSeptailStyle(Workbook workbook, boolean isWarp) { CellStyle style = workbook.createCellStyle(); style.setAlignment(CellStyle.ALIGN_CENTER); style.setVerticalAlignment(CellStyle.VERTICAL_CENTER); style.setDataFormat(STRING_FORMAT); if (isWarp) { style.setWrapText(true); } return style; } @Override public CellStyle getHeaderStyle(short color) { CellStyle titleStyle = workbook.createCellStyle(); Font font = workbook.createFont(); font.setBold(true);// 加粗 font.setColor(IndexedColors.RED.index); font.setFontHeightInPoints((short) 11); titleStyle.setFont(font); titleStyle.setAlignment(HorizontalAlignment.CENTER);// 居中 titleStyle.setFillForegroundColor(IndexedColors.WHITE.index);// 设置颜色 titleStyle.setVerticalAlignment(VerticalAlignment.CENTER);// 垂直居中 titleStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); titleStyle.setBorderRight(BorderStyle.THIN); titleStyle.setWrapText(true); return titleStyle; } @SuppressWarnings("deprecation") @Override public CellStyle stringNoneStyle(Workbook workbook, boolean isWarp) { CellStyle style = workbook.createCellStyle(); style.setAlignment(CellStyle.ALIGN_CENTER); style.setVerticalAlignment(CellStyle.VERTICAL_CENTER); style.setDataFormat(STRING_FORMAT); if (isWarp) { style.setWrapText(true); } return style; }}3、创建核心导出工具类import cn.afterturn.easypoi.excel.ExcelExportUtil;import cn.afterturn.easypoi.excel.entity.ExportParams;import com.sunny.spring.boot.poi.common.ExcelExportMyStylerImpl;import com.sunny.spring.boot.poi.pojo.StudentInfoBean;import org.apache.poi.ss.formula.functions.T;import org.apache.poi.ss.usermodel.Workbook;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServletResponse;import java.net.URLEncoder;import java.text.SimpleDateFormat;import java.util.Collection;import java.util.Date;import java.util.List;/** * @ClassName: ExcelExportUtil * @Description: Exceld导出工具类 * @Author: sunt * @Date: 2019/8/30 14:49 * @Version 1.0 **/public class MyExcelExportUtil { /** * Excel文件导出,导出的文件名默认为:headTitle+当前系统时间 * @param listData 要导出的list数据 * @param pojoClass 定义excel属性信息 * @param headTitle Excel文件头信息 * @param sheetName Excel文件sheet名称 * @param response */ public static void exportExcel(Collection<?> listData,Class<?> pojoClass, String headTitle, String sheetName, HttpServletResponse response) { ExportParams params = new ExportParams(headTitle, sheetName); params.setHeight((short) 8); params.setStyle(ExcelExportMyStylerImpl.class); try { Workbook workbook = ExcelExportUtil.exportExcel(params, pojoClass, listData); String fileName = headTitle + new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()); fileName = URLEncoder.encode(fileName, "UTF8"); response.setContentType("application/vnd.ms-excel;chartset=utf-8"); response.setHeader("Content-Disposition", "attachment;filename="+fileName + ".xls"); ServletOutputStream out=response.getOutputStream(); workbook.write(out); out.flush(); out.close(); } catch (Exception e) { e.printStackTrace(); } }}4、创建导出对象实体Bean注意日期类型 注解内要加上: exportFormat = "yyyy-MM-dd hh:mm:ss"import cn.afterturn.easypoi.excel.annotation.Excel;import com.baomidou.mybatisplus.annotation.TableField;import com.baomidou.mybatisplus.annotation.TableId;import com.baomidou.mybatisplus.annotation.TableName;import lombok.Data;import lombok.EqualsAndHashCode;import lombok.experimental.Accessors;import java.io.Serializable;import java.math.BigDecimal;/** * <p> * 学生基本信息表 * </p> * * @author sunt * @since 2019-08-29 */@Data@EqualsAndHashCode(callSuper = false)@Accessors(chain = true)@TableName("T_STUDENT")public class StudentInfoBean implements Serializable { private static final long serialVersionUID = 1L; /** * 学号 */ @TableId("ID") @Excel(name = "学号", width = 20, orderNum = "1") private String id; /** * 姓名 */ @TableField("NAME") @Excel(name = "姓名", width = 20, orderNum = "2") private String name; /** * 性别(1:男 2:女) * replace:导出是{a_id,b_id} 导入反过来,注意大括号里面单独引号引起来的 */ @TableField("SEX") @Excel(name = "性别", width = 20, replace = { "男_1", "女_2" },orderNum = "3") private String sex; /** * 年龄 */ @TableField("AGE") @Excel(name = "年龄", width = 20, orderNum = "4") private Integer age; /** * 出生日期 */ @TableField("BIRTHDAY")@Excel(name = "商品创建时间", width = 20, orderNum = "12",exportFormat = "yyyy-MM-dd hh:mm:ss") private String birthday; /** * 入学时间 */ @TableField("REGIST_DATE") @Excel(name = "入学时间",width = 20,orderNum = "6") private String registDate; /** * 学费 */ @TableField("FEE") @Excel(name = "学费", width = 20, orderNum = "7") private BigDecimal fee;}属性字段属性值@TableField这个字段代表数据库表的字段@Excelname代表导出Excel列名称@ExcelorderNum代表Excel列排在第几列@Excelreplace一般数据库存的性别例如0和1,导出的值0展示为男性,女展示为女性5、后台方法:

推荐整理分享使用EasyPoi导出Excel(easyposer怎么导出),希望有所帮助,仅作参考,欢迎阅读内容。

使用EasyPoi导出Excel(easyposer怎么导出)

文章相关热门搜索词:easypoi导入,easypoi导出excel模板,easypoi导出xlsx,easypoi导出excel模板,easypoi导出word,easypoi导出excel模板,easypoi导出xlsx,easypoi导出xlsx,内容如对您有帮助,希望把文章链接给更多的朋友!

直接调用查询方法,返回给前台就OK

@RequestMapping("/exportStudent") public void exportStudent(HttpServletResponse response) { try { List<StudentInfoBean> sutdentList = studentService.queryAllStudent(); MyExcelExportUtil.exportExcel(sutdentList,StudentInfoBean.class,"学生基本信息","新生入学信息",response); } catch (Exception e) { e.printStackTrace(); } }6、前台的方法

不能使用ajax方法,返回的是字符串,后台返回的是流,如果用ajax返回的是乱码,并且浏览器不下载

//导出excel excel(){ window.open("http://localhost:88/api/shop/shop/exportShop") },
本文链接地址:https://www.jiuchutong.com/zhishi/300323.html 转载请保留说明!

上一篇:区块链开发完整指南。如何开发一款区块链项目?(区块链技术开发入门)

下一篇:前端基础之CSS扫盲(前端schema)

  • 简易计税会计分录举例
  • 报关单保费000/0.1/1
  • 电子发票字迹不清怎么办
  • 小规模纳税人租金发票的税率是多少
  • 微信支付属于现金嘛
  • 退伍士兵增值税减免账务处理
  • 收到的增值税
  • 国外租赁行业都包括哪些
  • 股东投入的资金要交税吗
  • 现金支票作废需要签字吗
  • 增值税专用发票的税率是多少啊
  • 设计费开专用发票几个点
  • 旅游业营改增差额征税的会计核算怎么做?
  • 劳务派遣企业如何认定
  • 财务软件操作指南
  • 个人承包工程如何合理避税
  • 管理费用劳务费包括什么
  • 苹果客服人工24小时
  • 公司用车年检
  • 实收资本要求
  • 公司股权变更后税务没有变更会有什么后果
  • macbook隐藏
  • 公司账户存款
  • SCHDPL32.EXE - SCHDPL32是什么进程 有什么用
  • 路由器登录密码忘了怎么设置
  • 带息应收票据应于收到或开出或承兑时
  • 收到银行汇票怎么背书
  • 企业签订的技术合同
  • 小规模纳税人每月申报什么税
  • 天猫提现不走对公2023
  • 个税申报工资比实发工资少,但没超过5000可以举报吗
  • thinkphp教程
  • ppp中启用chap命令
  • 清算的基本流程
  • 加班工资应如何算
  • 增值税专用发票的税率是多少啊
  • 购买办公用品如何写摘要
  • 安装sql server 2008提示重新启动计算机
  • 业务招待费进项票可以抵扣吗
  • 防伪开票系统打不开
  • 小规模纳税人企业所得税2023
  • 公墓造价成本
  • 货款已退回货已收到怎么办
  • 固定资产的定义是什么?
  • 停车费比油费还贵
  • 购销合同印花税计税依据
  • 房地产开发公司注册条件
  • 期间费用怎么区分
  • 上个季度增值税报错了
  • 进项税额减免部分在重点税源表中怎么填
  • 会计处理的相关知识点
  • 水利建设税怎么做账
  • 免征增值税进项税额不得抵扣
  • 文档介绍
  • centos 网卡顺序
  • fan.error是什么意思
  • windows10 命令行
  • windows向microsoft报告
  • linux iocp
  • margin负值
  • javascript ts
  • 在dos中文件是以什么目录结构
  • css一个页面跳转到另一页面
  • java程序员准备骑驴找马了,需要怎么准备
  • jquery中ajax处理跨域的三大方式
  • 从零基础开始
  • shell监控端口状态
  • jquery1.8
  • nodejs实现文件下载
  • node.js的安装步骤
  • javascript的dom
  • javascriptfor循环嵌套
  • 如何强化理论武装
  • 网上税务局电子发票怎么领用
  • 国家税务局网上江苏电子税务局官网
  • 志愿者补贴如何领取
  • 常州金坛最新新闻
  • 发票多久作废不了
  • 抄税失败是怎么回事
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设