poi excel数据统计导出

##poi excel导出案例
1.ajxa导出请求没有任何反应,打断点看了workBook中也有数据,网上查阅说ajax请求导出无法接收流,换成location.href,果然可以了
2.控制器代码

response.setCharacterEncoding("UTF-8");response.setContentType("application/vnd.ms-excel");String encodedFilename = "attachment; filename*=UTF-8''" + URLEncoder.encode(filename, "UTF-8") + ".xls";response.setHeader("Content-Disposition", encodedFilename);HSSFWorkbook workbook = new HSSFWorkbook();if("00A".equals(docType)){workbook = docExportService.getDocInDetailsToExport(filename, workbook, this.getSysOrg().getOrgId(), startTime, endTime);}else{workbook = docExportService.getDocOutDetailsToExport(filename, workbook, this.getSysOrg().getOrgId(), startTime, endTime);}OutputStream outputStream = response.getOutputStream();workbook.write(outputStream);outputStream.flush();outputStream.close();

2.excel合并处理数据

try {HSSFSheet sheet = workbook.createSheet(filename);// 列头的样式HSSFFont columnHeadFont = workbook.createFont();columnHeadFont.setFontName("宋体");columnHeadFont.setFontHeightInPoints((short) 10);columnHeadFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);HSSFCellStyle columnHeadStyle = workbook.createCellStyle();columnHeadStyle.setFont(columnHeadFont);columnHeadStyle.setAlignment(HSSFCellStyle.ALIGN_LEFT);// 左右居中columnHeadStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中columnHeadStyle.setLocked(true);columnHeadStyle.setWrapText(true);columnHeadStyle.setLeftBorderColor(HSSFColor.BLACK.index);// 左边框的颜色columnHeadStyle.setBorderLeft((short) 1);// 边框的大小columnHeadStyle.setRightBorderColor(HSSFColor.BLACK.index);// 右边框的颜色columnHeadStyle.setBorderRight((short) 1);// 边框的大小columnHeadStyle.setTopBorderColor(HSSFColor.BLACK.index);columnHeadStyle.setBorderTop((short) 1);columnHeadStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 设置单元格的边框为粗体columnHeadStyle.setBottomBorderColor(HSSFColor.BLACK.index); // 设置单元格的边框颜色// 设置单元格的背景颜色(单元格的样式会覆盖列或行的样式)columnHeadStyle.setFillForegroundColor(HSSFColor.WHITE.index);//标题样式HSSFFont headfont = workbook.createFont();headfont.setFontName("黑体");headfont.setFontHeightInPoints((short) 22);// 字体大小headfont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);// 加粗HSSFCellStyle headstyle = workbook.createCellStyle();headstyle.setFont(headfont);headstyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中headstyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中headstyle.setLocked(true);headstyle.setWrapText(true);// 自动换行//表头样式HSSFCellStyle headstyle0 = workbook.createCellStyle();headstyle0.setFont(headfont);headstyle0.setAlignment(HSSFCellStyle.ALIGN_CENTER);// 左右居中headstyle0.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);// 上下居中headstyle0.setLeftBorderColor(HSSFColor.BLACK.index);// 左边框的颜色headstyle0.setBorderLeft((short) 1);// 边框的大小headstyle0.setRightBorderColor(HSSFColor.BLACK.index);// 右边框的颜色headstyle0.setBorderRight((short) 1);// 边框的大小headstyle0.setTopBorderColor(HSSFColor.BLACK.index);headstyle0.setBorderTop((short) 1);headstyle0.setBorderBottom(HSSFCellStyle.BORDER_THIN); // 设置单元格的边框为粗体headstyle0.setBottomBorderColor(HSSFColor.BLACK.index); // 设置单元格的边框颜色// 设置单元格的背景颜色(单元格的样式会覆盖列或行的样式)headstyle0.setFillForegroundColor(HSSFColor.GREY_80_PERCENT.index);String [] fields={"序号","登记时间","备注"};//创建表头HSSFRow header = sheet.createRow(0);header.setHeight((short) 1000);Region region = new Region(0, (short) 0, 0, (short) (fields.length-1));sheet.addMergedRegion(region);HSSFCell hc = header.createCell(0);hc.setCellValue(new HSSFRichTextString("数据统计"));hc.setCellStyle(headstyle0);//创建表头HSSFRow row = sheet.createRow(1);row.setHeight((short) 500);for (int i=0;i<fields.length;i++){HSSFCell cellA = row.createCell(i);cellA.setCellValue(fields[i]);cellA.setCellStyle(columnHeadStyle);sheet.setColumnWidth(i,4500);}Page pager=xxxService.getInxxxList(orgId,startTime,endTime, 1, Integer.MAX_VALUE);//添加数据行List<xxx > inList = (List<xxx >) pager.getData();int row0=2;for (int rowIndex = 1; rowIndex <= inList.size(); rowIndex++) {xxx detail = inList.get(rowIndex - 1);HSSFRow dataRow = sheet.createRow(row0);dataRow.setHeight((short)500);for(int m=0;m<fields.length;m++){HSSFCell cell = dataRow.createCell(m);String tempString = "";if (fields[m].equals("序号")) {tempString = String.valueOf(rowIndex);}if (fields[m].equals("登记时间")) {tempString = detail.getCreateDate();}if (fields[m].equals("备注")) {tempString ="";//todo 现在无值}cell.setCellValue(new HSSFRichTextString(tempString));cell.setCellStyle(columnHeadStyle);}row0++;}} catch (Exception e) {e.printStackTrace();}return workbook;

4.展示结果:
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

昆仑通态触摸屏-如何完成几个窗口的切换

一、启动窗口 想要哪一个窗口是启动时第一个显示的&#xff0c;就把谁设置为启动窗口就可以。 二、公共窗口 给一个窗口命名为公共窗口 然后选择一个窗口&#xff0c;将他的公共窗口设置为我们刚才命名的那个窗口 三、页面切换 页面切换&#xff0c;是通过在公共窗口内设置按…

dns服务器配置

主服务器 1.挂载点 mount /dev/sr0 /mnt 2.防火墙关闭 systemctl stop firewalld setenforce 0 3.下载bind软件 dnf install bind -y 4.进行正向解析配置 vim /etc/named.conf options { listen-on port 53 { 192.168.92.128; }; directo…

GraphRAG本地部署使用及兼容千帆通义

文章目录 前言一、GraphRAG本地安装1.创建环境并安装2.准备demo数据3.初始化demo目录 二、GraphRAG兼容千帆通义等大模型1.安装 graphrag-more2.准备Demo数据3.初始化demo目录4.移动和修改 settings.yaml 文件 三、知识库构建与使用1.知识库构建2.执行查询 前言 GraphRAG是一种…

揭秘2024年最火的5个科技趋势,你准备好迎接了吗?

在这个信息化飞速发展的时代&#xff0c;科技正以前所未有的速度改变着我们的生活。2024年&#xff0c;科技行业将迎来哪些新的突破与趋势&#xff1f;从人工智能到量子计算&#xff0c;从数字货币到智能家居&#xff0c;未来已来&#xff0c;而我们正站在一个巨变的风口浪尖上…

Python实例:爱心代码

前言 在编程的奇妙世界里,代码不仅仅是冰冷的指令集合,它还可以成为表达情感、传递温暖的独特方式。今天,我们将一同探索用 Python 语言绘制爱心的神奇之旅。 爱心,这个象征着爱与温暖的符号,一直以来都在人类的情感世界中占据着特殊的地位。而通过 Python 的强大功能,…

scala学习记录,Set,Map

set&#xff1a;集合&#xff0c;表示没有重复元素的集合&#xff0c;特点&#xff1a;唯一 语法格式&#xff1a;val 变量名 Set [类型]&#xff08;元素1&#xff0c;元素2...&#xff09; 可变不可变 可变&#xff08;mutable&#xff09;可对元素进行添加&#xff0c;删…

基于SpringBoot的免税商品优选购物商城的设计与实现

一、项目背景 从古至今&#xff0c;通过书本获取知识信息的方式完全被互联网络信息化&#xff0c;但是免税商品优选购物商城&#xff0c;对于购物商城工作来说&#xff0c;仍然是一项非常重要的工作。尤其是免税商品优选购物商城&#xff0c;传统人工记录模式已不符合当前社会…

从零开始的c++之旅——多态

1. 多态的概念 通俗来说就是多种形态。 多态分为编译时多态&#xff08;静态多态&#xff09;和运行时多态&#xff08;动态多态&#xff09;。 编译时多态主要就是我们之前提过的函数重载和函数模板&#xff0c;同名提高传不同的参数就可以调 用不同的函数&#xff0c…

火山引擎VeDI数据服务平台:在电商场景中,如何解决API编排问题?

01 平台介绍 数据服务平台可以在保证服务高可靠性和高安全性的同时&#xff0c;为各业务线搭建数据服务统一出口&#xff0c;促进数据共享&#xff0c;为数据和应用之间建立了一座“沟通桥梁”。 同时&#xff0c;解决数据理解困难、异构、重复建设、审计运维困难等问题&#x…

Object 内部类 异常

Objbect类 java提供了Object,它是所有类的父类,每个类都直接或间接的继承了Object类,因此Object类通常被称为超类 当定义一个类时,如果没有使用extends关键字直接去指定父类继承,只要没有被继承的类,都是会默认的去继承Object类,超类中定义了一些方法 方法名称方法说明boole…

Linux 高级IO

学习任务&#xff1a; 高级 I/O&#xff1a;select、poll、epoll、mmap、munmap 要求&#xff1a; 学习高级 I/O 的用法&#xff0c;并实操 1、高级 I/O&#xff1a; 前置知识&#xff1a; 阻塞、I/O 多路复用 PS: 非阻塞 I/O ------ 非阻塞 I/O 阻塞其实就是进入了休眠状态&am…

JAVA WEB — HTML CSS 入门学习

本文为JAVAWEB 关于HTML 的基础学习 一 概述 HTML 超文本标记语言 超文本 超越文本的限制 比普通文本更强大 除了文字信息 还可以存储图片 音频 视频等标记语言 由标签构成的语言HTML标签都是预定义的 HTML直接在浏览器中运行 在浏览器解析 CSS 是一种用来表现HTML或XML等文…

雷池社区版 7.1.0 LTS 发布了

LTS&#xff08;Long Term Support&#xff0c;长期支持版本&#xff09;是软件开发中的一个概念&#xff0c;表示该版本将获得较长时间的支持和更新&#xff0c;通常包含稳定性、性能改进和安全修复&#xff0c;但不包含频繁的新特性更新。 作为最受欢迎的社区waf&#xff0c…

出海企业如何借助云计算平台实现多区域部署?

云计算de小白 如需进一步了解&#xff0c;请单击链接了解有关 Akamai 云计算的更多信息 在本文中我们将告诉大家如何在Linode云计算平台上借助VLAN快速实现多地域部署。 首先我们需要明确一些基本概念和思想&#xff1a; 部署多区域 VLAN 为了在多区域部署中在不同的 VLAN …

AI赋能酒店设计|莱佛士学生成功入围WATG设计大赛

近日&#xff0c;由Wimberly Allison Tong & Goo&#xff08;WATG&#xff09;主办的“用人工智能重新构想酒店行业的未来”设计比赛正式拉开帷幕。这场设计比赛&#xff0c;不仅是为了庆祝WATG即将步入80周年&#xff0c;更是为了激发年轻设计师们的创造力和探索实践精神&…

Netty原来就是这样啊(二)

前言: Netty其实最大的特点就是在于对于对NIO进行了进一步的封装,除此以外Netty的特点就是在于其的高性能 高可用性,下面就会一一进行说明。 高性能: 我在Netty原来就是这样啊(一)-CSDN博客 解释了其中的零拷贝的技术除此以外还有Reactor线程模型,这个Reactor线程模型的思想…

对于相对速度的重新理解

狭义相对论速度合成公式如下&#xff0c; 现在让我们尝试用另一种方式把它推导出来。 我们先看速度的定义&#xff0c; 常规的速度合成方式如下&#xff0c; 如果我们用速度的倒数来理解速度&#xff0c; 原来的两个相对速度合成&#xff0c; 是因为假定了时间单位是一样的&am…

idea 导入Spring源码遇到的坑并解决

1.下载相关文件 通过百度网盘分享的文件&#xff1a;Spring 链接&#xff1a;https://pan.baidu.com/s/1r9rkGOCaY9SFn9ecng5cIg?pwd8888 提取码&#xff1a;8888 2.配置gradle环境 gradle下载地址 需要翻墙下 https://services.gradle.org/distributions/ 我选择的是 grad…

红队-linux基础(1)

声明 通过学习 泷羽sec的个人空间-泷羽sec个人主页-哔哩哔哩视频,做出的文章如涉及侵权马上删除文章 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负 一.openssl 1、openssl passwd -1 123 openssl是一个开源的…

迈入国际舞台,AORO M8防爆手机获国际IECEx、欧盟ATEX防爆认证

近日&#xff0c;深圳市遨游通讯设备有限公司&#xff08;以下简称“遨游通讯”&#xff09;旗下5G防爆手机——AORO M8&#xff0c;通过了CSA集团的严格测试和评估&#xff0c;荣获国际IECEx及欧盟ATEX防爆认证证书。2024年11月5日&#xff0c;CSA集团和遨游通讯双方领导在遨游…