位置: 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)

  • 电脑关不了机一直转圈(电脑关不了机)(电脑关不了机一直显示正在关机)

    电脑关不了机一直转圈(电脑关不了机)(电脑关不了机一直显示正在关机)

  • 网易云评论怎么抱一抱(网易云评论怎么分享到动态)

    网易云评论怎么抱一抱(网易云评论怎么分享到动态)

  • 网页怎么创建桌面快捷方式(网页创建桌面)

    网页怎么创建桌面快捷方式(网页创建桌面)

  • win11安装怎么跳过网络连接(win11安装怎么跳过账户登录)

    win11安装怎么跳过网络连接(win11安装怎么跳过账户登录)

  • iphone摄影怎么没了(苹果手机摄影没有了)

    iphone摄影怎么没了(苹果手机摄影没有了)

  • 陌陌升级规则(陌陌升级有什么好处)

    陌陌升级规则(陌陌升级有什么好处)

  • p40悬浮球在哪(p40悬浮球哪关)

    p40悬浮球在哪(p40悬浮球哪关)

  • 微信商家收款为什么要第二天才能到账(微信商家收款为什么输入金额需要认证)

    微信商家收款为什么要第二天才能到账(微信商家收款为什么输入金额需要认证)

  • vivo手机上的hd怎么关闭(vivo手机上的hd怎么去掉)

    vivo手机上的hd怎么关闭(vivo手机上的hd怎么去掉)

  • vivonex3双卡怎么插(vivonex3s双卡双待怎么设置)

    vivonex3双卡怎么插(vivonex3s双卡双待怎么设置)

  • s11-160/10表示什么意思(s11_160/10)

    s11-160/10表示什么意思(s11_160/10)

  • g41主板配什么显卡(g41主板配什么显卡看电影)

    g41主板配什么显卡(g41主板配什么显卡看电影)

  • 为什么苹果下载软件需要验证(为什么苹果下载不了软件需要验证)

    为什么苹果下载软件需要验证(为什么苹果下载不了软件需要验证)

  • 图片分辨率越高越清晰吗(图片分辨率越高包含的数据越多)

    图片分辨率越高越清晰吗(图片分辨率越高包含的数据越多)

  • 华为p30支持双微信吗(华为p30支持双频wifi吗)

    华为p30支持双微信吗(华为p30支持双频wifi吗)

  • 为什么拼多多会自己扣钱(为什么拼多多会自动下载)

    为什么拼多多会自己扣钱(为什么拼多多会自动下载)

  • 京东直播在哪里看(京东直播在哪里申请)

    京东直播在哪里看(京东直播在哪里申请)

  • 手机网速不好(手机网速不好怎么提升网速)

    手机网速不好(手机网速不好怎么提升网速)

  • 苹果xs来电声音越来越小(苹果xs来电声音设置)

    苹果xs来电声音越来越小(苹果xs来电声音设置)

  • 卷曲的蕨菜叶,加拿大魁北克 (© Marianna Armata/Getty Images)(卷曲的蕨菜叶怎么吃)

    卷曲的蕨菜叶,加拿大魁北克 (© Marianna Armata/Getty Images)(卷曲的蕨菜叶怎么吃)

  • vue实现列表自动滚动的方式(二)(vue每一列内容过多自动换行)

    vue实现列表自动滚动的方式(二)(vue每一列内容过多自动换行)

  • 如何让别人访问本地运行的vue项目(如何让别人访问自己的qq空间)

    如何让别人访问本地运行的vue项目(如何让别人访问自己的qq空间)

  • 未办理税务登记的个体户怎么注销营业执照
  • 出口退税免税有限额吗
  • 12月工资1月发个税怎么算
  • 营改增利息收入不能抵扣
  • 资产负债表从哪里打出来的
  • 设计合同需要缴哪些税
  • 横向转拨财政款应通过什么科目
  • 购买旧固定资产的增值税进项税
  • 收到低值资产报废回收款账务处理
  • 全年累积盈利交所得税吗?
  • 营改增后如何纳税
  • 财产租赁合同印花税计税依据含税吗
  • 购入无形资产产生的咨询费
  • 哪些政府补助属于国家
  • 企业承租经营的承租人取得的所得
  • 发票认证了还能退回吗
  • 发票没开完可以领取吗?
  • 民办幼儿园怎么给老师交五险一金
  • 收到银联客户备注短信
  • 城市生活垃圾处理费应该交吗
  • 已付款未收到发票
  • 购入增值税税控系统专用设备为什么全额计入固定资产
  • 对方开具红字发票过来怎么做进项税转出
  • 税款所属期是什么意思举例子
  • 购买汽车分期付款利息怎么算
  • 施工组织评审会谁组织
  • 工程结算的账务处理
  • 公司买发票的费用怎么做账
  • 应交税费为负数什么原因
  • 员工的通讯费怎么报销
  • 项目辅材计入什么科目
  • 一借多贷的会计分录格式
  • php引用返回用法怎么用
  • java使用循环结构输出九九乘法表
  • php数组排列组合算法
  • tmux复制粘贴
  • python魔法方法详解
  • 关于公司预支工资制度
  • 水电费发票如何分配给客户
  • 预收货款尚未发货
  • ps调色的作用
  • 成本费用利润率是什么指标
  • 网上更正增值税申报表
  • 免税普票要交企业所得税吗
  • 小规模企业没有进项票能开发票吗
  • 费用票必须是公司发票吗
  • MYSQL的数据类型共有几大类?
  • 公司土地使用权可以自主转让吗
  • 利息收入管理办法
  • 公司转帐支票可以转账吗
  • 个税速算扣除数2023
  • 未确认融资费用是什么类科目
  • 银行代扣水电费发票到哪里打
  • 收到销项负数发票怎么做分录
  • 转账手续费怎么入账
  • 购买固定资产是应付账款还是其他应付款
  • 固定资产改变用途折旧处理
  • 计提折旧对公司有什么好处
  • mysql 5.6 从陌生到熟练之_数据库备份恢复的实现方法
  • xp系统找不到指定的路径怎么办
  • YunDetectService.exe是什么进程?YunDetectService.exe禁止使用的方法
  • fedora怎么用
  • 进入bios设置u盘启动
  • linux ftp用户存在哪个文件中
  • cortana小娜怎么用
  • linux init.h
  • win8突然没有声音
  • windows 8/10whql
  • unity3d界面布局
  • node链接数据库
  • 框架常用注解
  • css中有序列表
  • 如何判断安卓手机
  • Android ImageLoader 本地缓存
  • 一不小心做错事男朋友就开始说我
  • jq获取table元素
  • jquery遍历li
  • 主要领导成员是指
  • 小微企业印花税税率
  • 地税公职律师招聘
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设