jxls的excel报表效果

2024-02-11 03:10
文章标签 excel 效果 报表 jxls

本文主要是介绍jxls的excel报表效果,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

155645_xs4L_552549.png



jxls的excel报表效果 ,遇到什么问题给我流言吧,我做过这方面

还是来点代码吧 ,是关键代码

HttpServletRequest request = getRequest();HttpServletResponse response = getResponse();SimpleDateFormat tempDate = new SimpleDateFormat("yyyyMMddhhmmssSSS");String datetime = tempDate.format(new java.util.Date());response.setContentType("application/x-msdownload");response.setHeader("content-disposition", "attachment; filename=" + datetime + ".xls");List<EntrustBatchs> orglist = new ArrayList<EntrustBatchs>();Map<String, Object> map = new HashMap<String, Object>();SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");map.put("year", year);map.put("month", month);map.put("bankname", orgName);map.put("tjdate", sdf.format(System.currentTimeMillis()));map.put("result1", orglist);try {String path = (getClass().getClassLoader().getResource("").toURI()).getPath();FileInputStream is = new FileInputStream(path +"template"+File.separator+"BatchEntrustReportTemplete.xls");
//			InputStream is = new FileInputStream("d:/test/cc.xls");// 关联模板XLSTransformer transformer = new XLSTransformer();HSSFWorkbook workBook = (HSSFWorkbook) transformer.transformXLS(is, map);HSSFSheet sheet = workBook.getSheetAt(0);// 合并单元格int fork = 3;int li = orglist.size(), lj = 0, lk = 0;int b = fork;b = fork;// 合并第二列b = fork;for (int i = 0; i < li; i++) {lj = orglist.get(i).getEntrustBatchTimes().size();for (int j = 0; j < lj; j++) {lk = orglist.get(i).getEntrustBatchTimes().get(j).getEntrustReport().size();int e = lk + b;sheet.addMergedRegion(new CellRangeAddress(b, e - 1, 1, 1));sheet.addMergedRegion(new CellRangeAddress(b, e - 1, 2, 2));b = e;b = b + 1;// 每行外部新增一行在此添加}b = b+orglist.get(i).getEntrustBatchDate().getEntrustReport().size()+1;// 每个分组外新增在此添加}// 合并第一列b = fork;for (int i = 0; i < li; i++) {lj = orglist.get(i).getEntrustBatchTimes().size();int lkh = 0;for (int m = 0; m < lj; m++) {lkh = lkh+ orglist.get(i).getEntrustBatchTimes().get(m).getEntrustReport().size()+1;}int e = lkh + b;sheet.addMergedRegion(new CellRangeAddress(b, e - 1, 0, 0));b = e;e = e + orglist.get(i).getEntrustBatchDate().getEntrustReport().size()+1;sheet.addMergedRegion(new CellRangeAddress(b, e - 1, 0, 0));b = e;}OutputStream os = response.getOutputStream();//			 OutputStream os = new FileOutputStream("d:/test/cc_report.xls");workBook.write(os);


xls模板 :因为这里不能上传文件,我就直接粘贴代码和图片了

项目	委托日期	手别	姓名	工号	委案情况		 撤案减数 		回款情况		回款率	组内排名金额 	个数	 金额 	个数	 金额 	个数		
<jx:forEach items="${result1}" var="b">												
<jx:forEach items="${b.entrustBatchTimes}" var="b1">												
<jx:forEach items="${b1.entrustReport}" var="b3">												
批次明细	${b3.commisnDate}	${b3.timesStr}	${b3.fullname}	${b3.username}	 ${b3.commisnmoneySum} 	${b3.commisnCount}	 ${b3.caCommisnMoneySum} 	${b3.caCommisnCount}	 ${b3.hkCommisnMoneySum} 	${b3.hkCommisnCount}	$[J7/(F7-H7)]	${b3.znSort}
</jx:forEach>												在银行内排名(委外机构排名)		1/4	合计	 $[SUM(F7)] 	$[SUM(G7)]	 $[SUM(H7)] 	$[SUM(I7)]	 $[SUM(J7)] 	$[SUM(K7)]	$[J9/(F9-H9)]	
</jx:forEach>												
<jx:forEach items="${b.entrustBatchDate.entrustReport}" var="b4">												
批次合计	${b.entrustBatchDate.commisnDate}	${b.entrustBatchDate.timesSetStr}	${b4.fullname}	${b4.username}	 ${b4.commisnmoneySum} 	${b4.commisnCount}	 ${b4.caCommisnMoneySum} 	${b4.caCommisnCount}	 ${b4.hkCommisnMoneySum} 	${b4.hkCommisnCount}	$[J12/(F12-H12)]	
</jx:forEach>												在银行内排名		1/4	合计	 $[SUM(F12)] 	$[SUM(G12)]	 $[SUM(G12)] 	$[SUM(I12)]	 $[SUM(J12)] 	$[SUM(K12)]	$[J14/(F14-H14)]

这是模板参考

160751_YgUx_552549.png

下面是生成效果:

161037_yo9m_552549.png


对于生成excel的财务报表特别好,jxls已经出2.0了比之前更好更快了。 很多报表工具生成pdf,xls很多类型但是都不强大不好用,什么report之类的 。经过筛选 jxls是最成熟 还在更新与维护,文档也很多。更多资料就自己百度了。

转载于:https://my.oschina.net/u/552549/blog/486180

这篇关于jxls的excel报表效果的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/698677

相关文章

python多种数据类型输出为Excel文件

《python多种数据类型输出为Excel文件》本文主要介绍了将Python中的列表、元组、字典和集合等数据类型输出到Excel文件中,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录一.列表List二.字典dict三.集合set四.元组tuplepython中的列表、元组、字典

Python Excel实现自动添加编号

《PythonExcel实现自动添加编号》这篇文章主要为大家详细介绍了如何使用Python在Excel中实现自动添加编号效果,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、背景介绍2、库的安装3、核心代码4、完整代码1、背景介绍简单的说,就是在Excel中有一列h=会有重复

使用Apache POI在Java中实现Excel单元格的合并

《使用ApachePOI在Java中实现Excel单元格的合并》在日常工作中,Excel是一个不可或缺的工具,尤其是在处理大量数据时,本文将介绍如何使用ApachePOI库在Java中实现Excel... 目录工具类介绍工具类代码调用示例依赖配置总结在日常工作中,Excel 是一个不可或缺的工http://

SpringBoot实现导出复杂对象到Excel文件

《SpringBoot实现导出复杂对象到Excel文件》这篇文章主要为大家详细介绍了如何使用Hutool和EasyExcel两种方式来实现在SpringBoot项目中导出复杂对象到Excel文件,需要... 在Spring Boot项目中导出复杂对象到Excel文件,可以利用Hutool或EasyExcel

Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)

《Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)》文章介绍了如何使用dhtmlx-gantt组件来实现公司的甘特图需求,并提供了一个简单的Vue组件示例,文章还分享了一... 目录一、首先 npm 安装插件二、创建一个vue组件三、业务页面内 引用自定义组件:四、dhtmlx

Java实战之利用POI生成Excel图表

《Java实战之利用POI生成Excel图表》ApachePOI是Java生态中处理Office文档的核心工具,这篇文章主要为大家详细介绍了如何在Excel中创建折线图,柱状图,饼图等常见图表,需要的... 目录一、环境配置与依赖管理二、数据源准备与工作表构建三、图表生成核心步骤1. 折线图(Line Ch

Python3脚本实现Excel与TXT的智能转换

《Python3脚本实现Excel与TXT的智能转换》在数据处理的日常工作中,我们经常需要将Excel中的结构化数据转换为其他格式,本文将使用Python3实现Excel与TXT的智能转换,需要的可以... 目录场景应用:为什么需要这种转换技术解析:代码实现详解核心代码展示改进点说明实战演练:从Excel到

Python自动化办公之合并多个Excel

《Python自动化办公之合并多个Excel》在日常的办公自动化工作中,尤其是处理大量数据时,合并多个Excel表格是一个常见且繁琐的任务,下面小编就来为大家介绍一下如何使用Python轻松实现合... 目录为什么选择 python 自动化目标使用 Python 合并多个 Excel 文件安装所需库示例代码

前端原生js实现拖拽排课效果实例

《前端原生js实现拖拽排课效果实例》:本文主要介绍如何实现一个简单的课程表拖拽功能,通过HTML、CSS和JavaScript的配合,我们实现了课程项的拖拽、放置和显示功能,文中通过实例代码介绍的... 目录1. 效果展示2. 效果分析2.1 关键点2.2 实现方法3. 代码实现3.1 html部分3.2

Python创建Excel的4种方式小结

《Python创建Excel的4种方式小结》这篇文章主要为大家详细介绍了Python中创建Excel的4种常见方式,文中的示例代码简洁易懂,具有一定的参考价值,感兴趣的小伙伴可以学习一下... 目录库的安装代码1——pandas代码2——openpyxl代码3——xlsxwriterwww.cppcns.c