jasperReport5.6.0生成PDF(一)
2015-06-29 15:48
295 查看
Jasperreport5.6.0生成PDF
最近项目中需要生成报表,先是看了下itext,觉得还可以,但是如果数据字段多的话,不太灵活。所以后来看了下ireport,觉得还可以,下面简单说一下它们:
jasperreport
JasperReport是一个强大、灵活的报表生成工具,能够展示丰富的页面内容,并将之转换成PDF,HTML,或者XML格式。该库完全由Java写成,可以用于在各种Java应用程序,包括J2EE,Web应用程序中生成动态内容。它是开源的,但文档收费。
ierport
iReport 是生成JasperReport所使用的报表格式文件.jasper,因为JasperReport本身并未提供很好的可视化报表设计工具,iReport的出现正好弥补了这个缺陷。
两者配合使用:irpeort负责生成编译后的.jasper格式文件,生成.jasper格式后再用
jasperreport在程序中生成需要的报表格式,这里主要说说jasperreport中如何生成pdf.
注意: jasperReport与ireport版本要一致。我这里的版本是最新的版本5.6.0。
如下例所示:
//ireport生成项目立项PDF格式
public
String getIreportPDFAction()
{
Connection conn =null;//连接
try
{
String projectapproid =request.getParameter("projectapproid");
//报表生成之后编译生成的.jasper文件位置
//1.绝对路径
File jasperFile=new
File("D:/jasper/report1.jasper");
//得到数据URL
String url ="jdbc:oracle:thin:@192.168.1.104:1521:orcl";
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(url,"zwjx","zwjx");
//设置参数
Map parmerters
= new HashMap();
parmerters.put("projectapproid",
projectapproid);
//生成pdf
byte[]
bytes = JasperRunManager.runReportToPdf(jasperFile.getPath(),parmerters,conn);
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
//指定位置保存pdf位置
FileOutputStream outs =new
FileOutputStream("D:/jasper/report1.pdf");
outs.write(bytes,0,bytes.length);
outs.flush();
outs.close();
}catch
(Exceptione) {
e.printStackTrace();
System.out.println("ireport生成报表出错!");
}finally
{
try
{
conn.close();
}catch(SQLException
e) {
//TODO
Auto-generated catch block
e.printStackTrace();
}
}
returnnull;
}
运行后我们去D盘下的jasper文件夹中可以看到生成的 pdf.打开效果如下:
//上面的读取位置和保存位置都是根据自己所放位置设定的。
最近项目中需要生成报表,先是看了下itext,觉得还可以,但是如果数据字段多的话,不太灵活。所以后来看了下ireport,觉得还可以,下面简单说一下它们:
jasperreport
JasperReport是一个强大、灵活的报表生成工具,能够展示丰富的页面内容,并将之转换成PDF,HTML,或者XML格式。该库完全由Java写成,可以用于在各种Java应用程序,包括J2EE,Web应用程序中生成动态内容。它是开源的,但文档收费。
ierport
iReport 是生成JasperReport所使用的报表格式文件.jasper,因为JasperReport本身并未提供很好的可视化报表设计工具,iReport的出现正好弥补了这个缺陷。
两者配合使用:irpeort负责生成编译后的.jasper格式文件,生成.jasper格式后再用
jasperreport在程序中生成需要的报表格式,这里主要说说jasperreport中如何生成pdf.
注意: jasperReport与ireport版本要一致。我这里的版本是最新的版本5.6.0。
如下例所示:
//ireport生成项目立项PDF格式
public
String getIreportPDFAction()
{
Connection conn =null;//连接
try
{
String projectapproid =request.getParameter("projectapproid");
//报表生成之后编译生成的.jasper文件位置
//1.绝对路径
File jasperFile=new
File("D:/jasper/report1.jasper");
//得到数据URL
String url ="jdbc:oracle:thin:@192.168.1.104:1521:orcl";
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(url,"zwjx","zwjx");
//设置参数
Map parmerters
= new HashMap();
parmerters.put("projectapproid",
projectapproid);
//生成pdf
byte[]
bytes = JasperRunManager.runReportToPdf(jasperFile.getPath(),parmerters,conn);
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
//指定位置保存pdf位置
FileOutputStream outs =new
FileOutputStream("D:/jasper/report1.pdf");
outs.write(bytes,0,bytes.length);
outs.flush();
outs.close();
}catch
(Exceptione) {
e.printStackTrace();
System.out.println("ireport生成报表出错!");
}finally
{
try
{
conn.close();
}catch(SQLException
e) {
//TODO
Auto-generated catch block
e.printStackTrace();
}
}
returnnull;
}
运行后我们去D盘下的jasper文件夹中可以看到生成的 pdf.打开效果如下:
//上面的读取位置和保存位置都是根据自己所放位置设定的。
相关文章推荐
- 从一个简单的ASP.NET 5站点开启.NET跨平台之旅
- Asp.Net页面自定义微信分享
- ASP.NET 设置网站在浏览器的选项页中的图标
- ASP.NET导入Excel到数据库(SQL)
- Casperjs/PhantomJs 中文网站截图乱码
- asp.net生成word文档服务器配置
- ASP.NET MVC处理JsonResult返回时间DateTime问题
- DevExpress2011控件教程)编辑控件(comboBox,AspxCheckBox) 范例1
- DevExpress.Web.ASPxGridView
- Asp.Net MVC大型项目实践整合 NHibernate与Json序列化
- asp.net单文件带进度条上传
- ASP.NET WEB API 调试
- jasper server定制数据源
- ASP.NET MVC 技术债务
- C#、WinForm、ASP.NET - Md5散列加密
- asp.net web API 的调用返回Json值 POST方式请求
- 理解SVG的viewport,viewBox,preserveAspectRatio
- ASP.NET MVC Routing Debugger路由调试工具
- ASP.NET 5中的静态文件处理
- ssh+lcx实现Metasploit测试机没有公网IP时候的公网端口映射