JasperReport学习笔记3-在浏览器生成PDF文件

JasperReports报表的开发流程 JasperReports的开发流程 1. 开发报表设计文件,也就是一个*.jrxml文件。 2. 使用JasperReports提供的JasperCompileManager工具编译*.jrxml文件,编译后生成一个*.jasper文件。 3. 使用JasperRepor 阅读详情
在浏览器生成PDF文件,主要用了JasperRunManager对象面的runReportToPdfStream方法,在WEB里一般都先用iReport生成jasper文件,这样就去解析JRXML文件了 

例子如下 
Java代码   收藏代码
  1. import java.io.IOException;  
  2. import java.io.InputStream;  
  3. import java.io.PrintWriter;  
  4. import java.io.StringWriter;  
  5. import java.util.HashMap;  
  6.   
  7. import javax.servlet.ServletException;  
  8. import javax.servlet.ServletOutputStream;  
  9. import javax.servlet.http.HttpServlet;  
  10. import javax.servlet.http.HttpServletRequest;  
  11. import javax.servlet.http.HttpServletResponse;  
  12.   
  13. import net.sf.jasperreports.engine.JREmptyDataSource;  
  14. import net.sf.jasperreports.engine.JRException;  
  15. import net.sf.jasperreports.engine.JasperRunManager;  
  16.   
  17. public class JasperReportServlet extends HttpServlet {  
  18.   
  19.     private static final long serialVersionUID = 1L;  
  20.   
  21.     public void doGet(HttpServletRequest request, HttpServletResponse response)  
  22.             throws ServletException, IOException {  
  23.         //获得输出流  
  24.         ServletOutputStream outputStream = response.getOutputStream();  
  25.         //获得输入流  
  26.         InputStream inputStream = getServletConfig().getServletContext().getResourceAsStream("JasperFile//JasperReportFile.jasper");  
  27.         try {  
  28.               
  29.             //生成网页的PDF文件  
  30.             JasperRunManager.runReportToPdfStream(inputStream, outputStream, new HashMap(), new JREmptyDataSource());  
  31.             //设置PDF格式  
  32.             response.setContentType("application/pdf");  
  33.             outputStream.flush();  
  34.             outputStream.close();             
  35.         } catch (JRException e) {  
  36.             StringWriter stringWriter = new StringWriter();  
  37.             PrintWriter printWriter = new PrintWriter(stringWriter);  
  38.             e.printStackTrace(printWriter);  
  39.             response.setContentType("text/plain");  
  40.             response.getOutputStream().print(stringWriter.toString());  
  41.         }  
  42.     }  
  43.   
  44.       
  45.     public void doPost(HttpServletRequest request, HttpServletResponse response)  
  46.             throws ServletException, IOException {  
  47.         this.doPost(request, response);  
  48.     }  
  49. }  

传智健康项目讲义第十二章之生成报表-导出PDF 在前面的课程中我们完成了将运营数据导出到Excel文件的功能。在企业开发中,除了常见的Excel形式报表,还有PDF形式的报表。那么如何导出PDF形式的报表呢? 常见的PDF报表生成方式 iText iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库。通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。 iText的安装非常方便,下载iText.jar文件后,只需要在系统的CLASSPATH中加入iText.ja 阅读详情

相关推荐

jasperReport5.6.0生成PDF(一)

Jasperreport5.6.0生成PDF   最近项目中需要生成报表,先是看了下itext,觉得还可以,但是如果数据字段多的话,不太灵活。所以后来看了下ireport,觉得还可以,下面简单说一下它们: jasperreport JasperReport是一个强大、灵活的报表生成工具,能够展示丰富的页面内容,并将之转换成PDF,

风清云淡的专栏 8632

JasperReport学习笔记5-其它数据生成动态的报表(WEB)

1.空数据(Empty Datasources) 就是说JRXML文件里面的内容都是静态的,直接使用 JREmptyDataSource就行了 Java代码 JasperRunManager.runReportToPdfStream(reportStream, servletOutputStream,newHashMap(),newJREmpt...

weixin_34050519的博客 240

java web 使用jasperReport 生成PDF报表

本文章主要讲述的是使用iReport工具生成jasper文件,在web应用中生成pdf文件。其原理非常简单,主要是依赖jar包需要注意,但你也可以根据异常进行判断那些jar包没有导入。让我们来简单看一下吧。 第一步:使用iReport工具生成jasper文件。   注:这里就不详细介绍了,不会的可以问度娘。 第二步:将生成的jasper文件放入项目中,并导入相关的jar包(需要的jar包在最

qq_21050783的博客 1861

JasperReport浏览器输出PDF为空白页的解决方案

当我们在用IReport制作好PDF模板,并生成jrxml,jaser文件时,将jaser文件放在web项目目录下,这时在Contoller中调用JasperRunManager.runReportToPdf()函数,即可输出PDF文件 [code="java"]@Controller @RequestMapping(value = "/test") public class testCon...

Donald_Draper 6366

使用ireport生成jasperreport报表模板

1、Jasperreport官网下载地址:http://community.jaspersoft.com/download 下载jasperreports-5.5.1-project.zip和iReport-5.5.0-windows-installer.exe即可。 2、ireport的使用请参考网上其它文章,推荐http://blog.csdn.net/q326527970/article

yingkongshi99的专栏 6216

本体(Ontology)概述

认识本体        本体(Ontology)的概念源自于哲学领域,在哲学中的定义为“对世界上客观事物的系统描述,即存在论”。哲学中的本体关心的是客观现实的抽象本质。而在计算机领域,本体可以在语义层次上描述知识,可以看成描述某个学科领域知识的一个通用概念模型。德国学者Studer在1998年给出了本体的相关定义“本体是共享概念模型的形式化规范说明”。这个定义包含了四层含义:即共享(share)...

baijinswpu的博客 7万+

在浏览器中显示JasperReports PDF文档

一、 第一种实现 把一个JasperReports生成的PDF报告发送到用户浏览器的技巧在于,调用 net.sf.jasperreports.engine.JasperRunManager.runReportToPdf()方法。这个方法具有多个 重载版本,我们在本文中使用的这个版本具有三个参数:一个字符串—描述了编译的报告(jasper文件)的绝对路...

weixin_34361881的博客 755

大红球预警版-精选+自定义板块监控

这是一款简单易用的股票大单资金监控插件,兼容通达信软件,可嵌入分时图或定制版面。它以红绿圆球直观显示主力买卖情况(红球为买,绿球为卖),支持300万以上大单语音播报。插件提供实时资金流向分析、多股同时监控、自定义预警条件等功能,无需L2账号。用户可自由切换图形/列表模式,监控特定板块,并配合幻影软件实现自动交易。虽然上涨股通常红球占优,但需结合其他指标综合判断。该插件完全免费,包含详细视频教程,适合新手使用。

guleba的博客 1795

JasperReport生成pdf文件 Java开发pdf文件 pdf文件生成及下载

JasperReport制作报表, JasperReport生成pdf文件, Java开发pdf文件, pdf文件生成及下载, ireport制作pdf报表, Java报表, SpringBoot下载pdf文件, JasperReport加载模板报错, JasperReport找不到字体, JasperReport生成pdf时字体报错

yudian1991的博客 1万+

中国30米逐年植被净初级生产力(NPP)数据集(1982年至今CASA模型)

1.3 气温、降水、地表太阳辐射数据 气温和降水数据月度空间插值数据是基于全国2400多个站点的日观测数据,在计算各气象要素月值的基础上,基于Anusplin软件插值生成的1982年以来各月度30米分辨率气温和降水栅格数据,插值过程中引入高程作为协变量。气温单位为℃,降水单位为mm。1.2 土地覆盖数据 土地覆盖数据来源于1985 年-2020年全球30米精细地表覆盖动态监测产品,该数据集包含29个地表覆盖类型,进行拼接、裁剪、重分类和重采样处理,获得8期250米分辨率的植被类型数据。

地球资源数据云的官方博客 2839

i茅台APP加密参数逆向分析:MT-Device-ID与mt-v生成算法

在移动应用安全领域,参数加密是防止API滥用的重要手段。通过对通信协议的逆向分析,可以揭示加密参数的生成原理,这对理解移动应用安全机制具有重要意义。以i茅台APP为例,其关键接口使用了MT-Device-ID和mt-v两个加密参数,前者基于设备硬件信息生成,后者则通过动态签名机制确保请求时效性。这类技术广泛应用于电商、金融等需要高安全性的场景。通过抓包工具和逆向工程手段,可以还原出从设备指纹生成到动态签名的完整技术链条,其中涉及MD5、SHA256等常见哈希算法的应用。掌握这些加密参数的生成逻辑,不仅有助于

weixin_28568819的博客 321

JasperReport生成pdf

数据库存的是字符串的话 new ByteArrayInputStream(org.apache.commons.codec.binary.Base64.decodeBase64($F{base64_str}.getBytes())) 在数据库存的是json格式的数据的话new ByteArrayInputStream(org.apache.commons.codec.binary.Base64.decodeBase64(net.sf.json.JSONObject.fromObject($F{bas

qq_38902226的博客 1763

Windows电脑如何用MobaXterm连接宇树G1机器人?保姆级SSH配置指南

本文提供了一份详细的保姆级教程,指导Windows用户使用MobaXterm通过SSH连接宇树G1机器人。内容涵盖从物理网络配置、MobaXterm安装与SSH会话创建,到文件传输、X11转发等高级功能,并包含常见问题排查与安全加固建议,帮助开发者快速建立稳定可靠的远程开发连接。

purple的博客 878

JasperReport 导出PDF不能加载

JasperReport 导出PDF不能加载。 项目JasperReport模板导出PDF,最近在浏览器不能打开了。 提示【未能加载PDF文档】,但不是JasperReport导出的PDF却正常。 一、调查: 1、调查发现,通过代码生成的PDF版本为1.4 而能正常显示的PDF版本为1.7。 2、新问题:发现直接打开pdf文件能显示,但是使用项目中还是有问题。 项目中加载PDF是通过controller读取文件后,用ResponseEntity返回, 修改为reponse直接返回。 二、对策: 1、代码中生

qgbihc的专栏 1245

飞牛fnNAS搭建个人小账本

本文介绍了如何在飞牛NAS上部署ezBookkeeping个人记账应用。该开源工具支持多平台使用,具备双因素认证、多级分类等功能。文章详细讲解了Docker激活、镜像下载、容器部署等步骤,并展示了账户管理、交易记录等基础操作。同时指导用户通过ZeroTier实现远程访问,方便随时随地使用个人记账系统。该方案既保障了数据隐私,又提供了专业记账功能,适合对财务隐私敏感的用户。

dgnankai的专栏 782

基于线性约束最小方差准则(LCMV)的自适应波束形成算法的matlab仿真

波束形成(BeamForming)通过对多路麦克风(常为多路全向麦)信号进行合并,抑制非目标方向信号,增强目标方向信号;进而能够实现对特定方向的聚焦拾音,能够有效提高接收信号的信噪比,也有起到降噪的作用。基本原理是波的干涉:通过调整不同阵列单元信号之间的参数,使得某些角度的信号增强,而另一些角度的信号相互抵消,例如下图中来自±45°的输入信号未被增强,而在0度方向的输入信号同相位叠加后被增强。为了将窄带波束形成扩展至宽带,可以使用频域LCMV波束形成器。

平时工作较为繁忙,私信消息一般晚上回复,谢谢大家~~ 763

【SpringBoot应用篇】SpringBoot+JasperReport导出PDF

JasperReport是一个强大、灵活的报表生成工具,能够展示丰富的页面内容,并将之转换成PDF,HTML,或者XML格式。该库完全由Java写成,可以用于在各种Java应用程序,包括J2EE,Web应用程序中生成动态内容。只需要将JasperReport引入工程中即可完成PDF报表的编译、显示、输出等工作。

输入技术、输出想法 3888

到底什么是Harness工程?一篇文章从入门到企业落地全解析

随着OpenClaw爆火,Harness Engineering(驾驭工程)成为AI编程时代的热门概念,很多小白对其感到陌生。本文用通俗类比和真实案例,避开复杂术语,从基础定义入手,讲清Harness Engineering的核心逻辑——人类工程师设计“约束系统”(马具),让AI模型(烈马)安全高效地完成代码工作,同时拆解其核心组件、企业落地场景和实战成果,帮小白快速入门,读懂这项能解放人力、提升效率的新技术,轻松掌握它的核心价值和落地思路。

program哲学 3284

JasperReport使用JavaBean作为数据源生成PDF

JasperReport使用JavaBean作为数据源生成PDFJasperReport - 数据源( Data Sources)1.新建Bean2.新建BeanFactory3.创建jrxml文件4.生成PDF传入数据源,生成PDF创建Controller运行结果 JasperReport - 数据源( Data Sources) 数据源是结构化数据容器。 在生成PDF时,JasperReports引擎从数据源获取数据。 可以从数据库,XML文件,对象数组和对象集合中获取数据。 fillReportXXX

weixin_41908813的博客 682

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

jasperreport 生成pdf下载功能

1、jasperreport 生成pdf下载功能必须的jar包: jasperreports-5.0.4.jar commons-digester-2.1.jar groovy-all-2.0.1.jar 2、用iReport软件编译生成下载所需的jaspr文件:      (1) 首先创建一张空白的Blank A4 页面,给它取相应的名称,然后设置页面属性,必须将"When No Da

yangshijin1988的专栏 4333

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

JasperReport和JasperReport Studio(iReport)生成PDF中文乱码的解决方案

环境: JasperReport5 JasperReport Studio 1.3.3 解决思路: JasperReport中PDF自带的字体种类太少,很多中文字体都没有,那就只能自己增加自定义字体进去。 解决步骤: 1,打开JasperReport Studio—Window—Preferences—Fonts 2,点击add,新增一个自定义字体       Family

个人技术积累 9553

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

JasperReport框架制作PDF报表

JasperReport框架制作PDF报表

大王叫我来打死程序猿 2844
上一篇: JasperReport学习笔记2-创建简单的报表例子
下一篇: JasperReport学习笔记4-查询数据库生成动态的报表(WEB)
「已注销」
博客等级 码龄16年 90粉丝 19原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值