JAVA将Excel中的报表导出为图片格式(一)问题背景
如题所示,先抛出一个问题,如何使用JAVA将Excel中的报表导出为图片格式?
首先说一下这个问题的背景,也就是为什么博主会碰到这个问题
随着微信,易信之流大行其道,企业内部的办公交流、绩效考评甚至考勤拍照等事务都转移到形形色色各种微信群、易信群了
压力山大的中国电信就是其中一个企业,所有电信员工手机上基本上都装着易信客户端
并不是因为易信是由中国电信更网易合作开发的IM产品,电信员工就自觉地热爱这个聊天工具
而是因为基本上所有部门都建有自己的易信群,平时工作上的交流很少发OA邮件,而是在易信上沟通了
尤其是涉及到经营发展的报表,原先每天上午八点出一个截止到上一日的统计报表,用Excel形式分发到各个支局就可以了
现在随着经营管控的不断精细化,领导要求每天从8:00-18:00每个时点整点通报各支局当日的业绩完成情况
整点报表通过易信群,发布给所有支局负责人,顺便说一句,群里有各部室领导和公司老总
这就相当恐怖了,对支局负责人来说恐怖,对数据支撑人员来说也很恐怖
博主作为一名干了三年数据支撑技术工作的支局负责人来说,已经跪了
抛开支局负责人的精神压力,就说说要实现这事儿,数据支撑人员也要从上午忙到晚上,每个时点都不能耽误
纯手工,有人值守的日子太难受了
要想实现整时整点地自动化执行,怎么办?
执行数据库好说,做个JOB整点执行就行了
生成Excel也好说,在Excel报表的封面sheet中做好各类函数调用,在隐藏sheet中使用JAVA的POI以及JDBC等技术刷一遍数据就可以了
问题是发报表,之前将Excel报表文件作为附件发送OA邮件,JAVA中使用jmail等技术,通过smtp协议轻而易举啊
现在需要人工截图,复制粘贴到易信客户端中,发送到易信群里
这项工作如果手工完成,需要的时间也不长,基本上30秒可以搞定,如果每天就上午发一次,完全不必麻烦写代码执行,我也不会写这篇博客
然而尊敬的电信公司领导要求每天从8:00-18:00每个整点通报,周六周日不休息,节假日不休息
你想想数据支撑人员能不能受得了,一线销售人员全年无休忙个不停,你不能让人家后端数据部门也跟着折腾啊
通过博主研究了易信的OAuth后,发现通过易信提供的API接口,使用WEB开发中基本的POST方式,可以很容易将图片推送给指定好友
然后就出现了这篇博客一开始抛出的问题:
如何使用JAVA将Excel中的报表导出为图片格式?
下一篇博文将详细描述博主的思路和最终实现代码。
JAVA将Excel中的报表导出为图片格式(一)问题背景的更多相关文章
- JAVA将Excel中的报表导出为图片格式(三)换一种实现
上一篇介绍了使用Java的Robot机器人实现截图,然后将剪贴板上的数据流生成PNG图片 但是经过博主的不断测试,在完全依赖远程桌面的没有终端显示器的服务器上 使用截图方式是不可行的,因为一旦使用了远 ...
- JAVA将Excel中的报表导出为图片格式(二)实现思路
接上文,一封类似于下方设计的Excel报表,如何将它指定的区域导出为样式一模一样的JPG图片呢? 要实现这个功能没有现成的解决方案,谷歌度娘了好久也没有,最终自己想了几条思路: 思路1:将报表中的背景 ...
- 【转】c# winform DataGridView导出数据到Excel中,可以导出当前页和全部数据
准备工作就是可以分页的DataGridView,和两个按钮,一个用来导出当前页数据到Excel,一个用来导出全部数据到Excel 没有使用SaveFileDialog,但却可以弹出保存对话框来 先做导 ...
- Java处理Excel中的日期格式
Java处理Excel中的日期格式 2011-12-23 17:34:03| 分类: java |举报 |字号 订阅 下载LOFTER 我的照片书 | 在Excel中的日期格式,其数值为距离1 ...
- Java 解析Excel(xls、xlsx两种格式)
Java 解析Excel(xls.xlsx两种格式) 一.环境 JDK 1.8 二.JAR 1.commons-collections4-4.1.jar 2.poi-3.9-20121203.jar ...
- java 在Excel中插入图片 POI实现
一.POI简介 Jakarta POI 是apache的子项目,目标是处理ole2对象.它提供了一组操纵Windows文档的Java API 目前比较成熟的是HSSF接口,处理MS Excel(97- ...
- java程序转换excel中科学记数法的数据为date类型
今天出于某些原因从mongodb数据库中导出了一些数据,为了更直观的发送给其他人查阅,便使用mongoVUE的导出为excel功能. 但是导出后出现了一个问题,里边有一列存储时间的,存储的是lon ...
- 在纯JaveScript中实现报表导出:从“PDF”到“JPG”
我们在前端报表中完成了各种工作数据的输入或内容处理之后,需要做什么? 数据的导出! 这些数据的常用导出格式有:PDF.Excel.HTML和图片几大类型. 但总有一些实际应用场景,需要的不仅仅是将现有 ...
- Java实现Excel中的NORMSDIST函数和NORMSINV函数
由于工作中需要将Excel中的此两种函数转换成java函数,从而计算内部评级的资本占用率和资本占用金额.经过多方查阅资料和整理,总结出如下两个转换方法 标准正态分布累计函数NORMSDIST: pub ...
随机推荐
- C# 获取数组的子集
private static void PrintSubItems(int[] source) { int i = 1; int total = int.Parse(Math.Pow(2, sourc ...
- 仿微博视频边下边播之滑动TableView自动播放-b
Tips:这次的内容分为两篇文章讲述01.[iOS]仿微博视频边下边播之封装播放器 讲述如何封装一个实现了边下边播并且缓存的视频播放器.02.[iOS]仿微博视频边下边播之滑动TableView自动播 ...
- c语言编程之二叉树
利用链表建立二叉树,完成前序遍历.中序遍历.后序遍历. 建立二叉树用的是前序遍历建立二叉树: #include<stdio.h> #include<stdlib.h> #inc ...
- SVN的405错误
错误1: 如果你没有阅读以下文字,活该你倒霉(这段文字是在googlecode添加新项目时生成的): Command-line access If you plan to make changes, ...
- 【转,未试】android 9path教程与去黑边
本帖最后由 ArcherFMY 于 2013-4-24 17:39 编辑 <ignore_js_op> draw9patch.zip (124.83 KB) 这是Draw9patch& ...
- 【环境】Linux下连接无线网常用命令
启用/重启/关闭 网络服务 /etc/init.d/networking start /etc/init.d/networking restart /etc/init.d/networking sto ...
- c++ 关于换行符
windows: \r\n linux: \n mac: \r http://blog.chinaunix.net/uid-12706763-id-10830.html 不同的OS有不同的换行符: O ...
- BZOJ 1051: [HAOI2006]受欢迎的牛 强连通缩点
题目链接: http://www.lydsy.com/JudgeOnline/problem.php?id=1051 题解: 强连通缩点得到DAG图,将图转置一下,对入度为零的点跑dfs看看能不能访问 ...
- 【BZOJ】【1022】【SHOI2008】小约翰的游戏John
博弈论 一看题,哇这不是Nim游戏么= =直接异或起来……啊咧怎么不对? 这道题是[Anti-Nim],普通的Nim是取走最后一个就赢,这题是取走最后一个输…… 做法参见 2009年贾志豪论文< ...
- hdu 1309 Loansome Car Buyer
纯粹的阅读理解题………… ;}