TIBCO Jaspersoft 使用教程+JasperReport 生成PDF记录
一、前言
关于上一篇文章,PDF生成确实能完成,但是项目上使用后,觉得代码量太繁琐,编写模板时样式问题事在头大,因此跟换技术,方便开发。
二、参考文献
说事在的,网上关于这些东西事在太少,找了很多资料,都说了写无关紧要的东西;
虽然我写出来了,但也只是暂时够用,后期遇到比较蛮烦的PDF,还是需要继续专研。
参考地址:又两个大佬博主写的很详细,我在这就不过多介绍了,下面附上连接,大家去看看(博主别责怪)
地之一:https://blog.csdn.net/shiyun123zw/article/category/7422282
地址二:https://blog.csdn.net/pigdreams/column/info/15303
这里的地址有软件的一些项目结构,元素介绍和模板显示区域的介绍https://www.cnblogs.com/max-hou/p/11982035.html
三、官网下载
首先需要到官网下载 Jaspersoft Studio 软件,和 JasperReport Library 这个文件
Jaspersoft:这是基于Eclipse软件开发的图形化报表设计工具。
JasperReport Library: JasperReports开源报告引擎,这里后期我们可以用它来打包中文字体使用。
四、下面正式开始 关于Column Footer问题
基本的我就不过多介绍,上面提供的两个博客中都有,记录下我碰到的问题
这里是我一个个拼接出来的模板,当我们点击Preview时就会碰到一个很严重的问题,Column Footer的问题就出现了,它一搬默认回再A4纸最下面生成
这样看起来就和我们本身预想的就不一样,需要将其合并起来,达到这种效果
这时候我们就需要将模板样式打开
搜索半天,最后还是自己摸索出来,原来这么简单!!
JAVA代码
当我们模板生成好的时候,需要讲模板编译下
<这里代码是和前端交互,存放在response流里,如果要存在本地,自行修改下。
public static <T> void runReportToPdf(Map<String, Object> mapParams, List<T> listParams, String jasperPath, HttpServletResponse response, String Name) throws IOException {ServletOutputStream out = null;try {out = response.getOutputStream();response.setContentType("application/pdf");response.setCharacterEncoding("utf-8");response.setHeader("Content-Disposition", "inline;fileName=XXXX.pdf" + Name + ".pdf");//新建ClassPathResourceClassPathResource classPathResource = new ClassPathResource(jasperPath);//获取对象流InputStream inputStream = classPathResource.getInputStream();//load流JasperReport jasperReport = (JasperReport) JRLoader.loadObject(inputStream);//获取JRDataSourceJRDataSource jrBeanCollectionDataSource = new JRBeanCollectionDataSource(listParams);byte[] bytes = JasperRunManager.runReportToPdf(jasperReport, mapParams, jrBeanCollectionDataSource);out.write(bytes);} catch (Exception e) {e.printStackTrace();}finally {out.flush();}}
JasperPrinterUtils.runReportToPdf(map,detailList,"/reports/outOrderPdf.jasper",response,"转出单据");
调取方法需要传入的参数,路径根据自己项目配置和目录结构来存放,最后的中文是生成的名字
其中map是对应模板中 Parameters 中的字段
detailList是对应 Fields 的字段
五、总结
模板是一点点拼接出来的,当我们需要的模板中有表头,数据时,我们的数据是循环的,表头只想每页开始时显示时,只需要把模板中Column Header 和 Detail选中就行,我们的表格根据自己的样式来放入就行。上面附上的连接一定要看,很详细!
TIBCO Jaspersoft 使用教程+JasperReport 生成PDF记录相关推荐
- JasperReport生成pdf
JasperReport生成pdf 最近使用JasperReport进行pdf的导出时所出现的一些问题,网上关于这方面的资料比较少,这里记录下避免掉坑 使用工具为Jaspersoft Studio,它 ...
- JasperReport生成PDF中文不显示处理
JasperReport是一个纯Java写的开源免费报表工具库,很久没有玩JasperReport了,最近有点时间重新找来学习一下.现在报表的设计都换成TIBCO Jaspersoft Studio了 ...
- PHP利用Java+JasperReport生成PDF快递单
文章目录 一.前言 二.方案选择 三.开发需要的 四.开发 一.前言 系统主要使用PHP作为开发语言,有一个需求是实时生成快递面单并且以PDF格式保存.多种方案的实现都不理想,最后选择使用Java生成 ...
- jasperreport生成html,JasperReport 生成Html、Excel、Pdf文件
项目截图如下: 该项目是:Maven项目 pom.xml 4.0.0 JasperReports JasperReports war 0.0.1-SNAPSHOT JasperReports Mave ...
- python生成c语言代码_Python爬取C语言中文网教程生成PDF
[Python] 纯文本查看 复制代码import requests from lxml import etree import re import os import pdfkit def geth ...
- TCPDF生成PDF文件方法教程说明
TCPDF生成PDF文件方法教程说明 TCPDF下载: composer: 在packagist中所搜tcpdf (https://packagist.org/packages/tecnickcom/ ...
- gitbook asciidoc 项目生成PDF 教程
环境 操作系统: win7 npm: 3.10.10 需求 今天在gitbook看elasticsearch权威指南时,发现与官网的有些不一样,或者说官网上的中文文档依然有些错别字或者翻译不对的地方. ...
- 【教程】如何使用Java生成PDF文档?
在如今数字化时代,越来越多的人使用PDF文档进行信息传递和共享.而使用Java生成PDF文档也成为了一个非常重要的技能,因为Java作为一种通用的编程语言,可以在不同的操作系统和平台上运行.下面,我们 ...
- 使用IText生成PDF文件,并记录一些遇到的问题
文章目录 写在前面: 生成PDF的流程 1.字体问题 一.使用系统环境下的字体 在window环境下查找字体 自定义字体 二.引入字体集jar 三.创建字体,并携带其他字体属性 字体样式 小结 关于字 ...
- 记录一个有关QT生成PDF的过程
直接上代码,代码中添加注释进行解释,方便自己和大家研究. 首先是头文件 genpdf.h #ifndef GENPDF_H #define GENPDF_H#include <QObject&g ...
最新文章
- pickle,json ;random,shelve
- python开发【第四篇】:python基础之函数
- 富文本NSMutableAttributedString用法大全
- 如何在TC里输出下拉列表
- 水声被动定位中的机器学习方法研究进展综述
- strus2中配置jqgrid入门
- 【R可视化】你家乡的肯德基都在哪儿?
- jquery的smartWizard插件使用方法
- 学计算机应用必备的软件,电脑装机六大必备软件神器推荐
- IC设计职位详解之“数字前端设计工程师”就业必学课程
- 计算机网络基础之物理层功能与协议
- SoftICE初使用
- ImageBox显示方式设置、打开图片文件
- 【随笔】那些免费友好的遥感影像数据下载网站
- Win10添加ssh公钥
- ANSYS FLUENT二维结构网络数值计算及后处理——流动传热
- 关于VMware虚拟机安装失败的解决办法,报错(29142)或者安装系统后无法启动
- 【电力电子】【2011.08】通过谐波电流注入改善三相整流器输入功率因数
- 如何进入PE系统(请点击)
- 关于排列熵的一些理解与解释