开发报表使用ireport开发还是比较快和方便的,以下整理jsp将jasper文件生成html,word,excel,pdf格式的代码:
ireport的使用教程可以参见一下附件:
1、生成html格式:
//输出html格式
Map<String,String> parameters = new HashMap<String,String>();
parameters.put("title","我们的产品");
Connection con = null;
try {
con=Conmysql.getCon();
//返回生成文件路径
String file=JasperRunManager.runReportToHtmlFile(application.getRealPath ("reports/test.jasper"), parameters, con);
response.sendRedirect("reports/test.html");
}
catch (Exception e) {
System.out.println(e);
}finally{
con.close();
}
2、生成PDF格式文件
//生成pdf格式
Map<String,String> parameters = new HashMap<String,String>();
parameters.put("title","我们的产品");
Connection con = null;
try {
con=Conmysql.getCon();
System.out.println("连接数据库成功");
byte[] bytes = JasperRunManager.runReportToPdf(application.getRealPath("reports/test.jasper"), parameters, con);
response.setContentType("application/pdf");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
}
catch (Exception e) {
System.out.println(e);
}finally{
con.close();
}
3、生成excel格式的文件
//生成excel格式
Connection con=null;
con=Conmysql.getCon();
Map<String,String> parameters = new HashMap<String,String>();
parameters.put("title","我们的产品");
try{
JasperPrint jasperPrint = JasperFillManager.fillReport(application.getRealPath("reports/test.jasper"),parameters,con);
ByteArrayOutputStream oStream = new ByteArrayOutputStream();
JRXlsExporter exporter = new JRXlsExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, oStream);
exporter.setParameter(JRXlsExporterParameter.IS_REMOVE_EMPTY_SPACE_BETWEEN_ROWS,Boolean.TRUE); // 删除记录最下面的空行
exporter.setParameter(JRXlsExporterParameter.IS_ONE_PAGE_PER_SHEET,Boolean.FALSE);// 删除多余的ColumnHeader
exporter.setParameter(JRXlsExporterParameter.IS_WHITE_PAGE_BACKGROUND,Boolean.FALSE);// 显示边框
exporter.exportReport();
byte[] bytes = oStream.toByteArray();
if(bytes != null && bytes.length > 0) {
response.reset();
response.setContentType("application/vnd.ms-excel");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes,0,bytes.length);
ouputStream.flush();
ouputStream.close();
}else{
out.print("bytes were null!");
}
}catch(JRException ex){
out.print("Jasper Output Error:"+ex.getMessage());
}finally{
con.close();
}
4、生成word格式的文件:
//生成word格式
Map<String,String> parameters = new HashMap<String,String>();
parameters.put("title","我们的产品");
Connection con = null;
try {
con=Conmysql.getCon();
System.out.println("连接数据库成功");
JasperPrint jasperPrint = JasperFillManager.fillReport(application.getRealPath("reports/test.jasper"),parameters,con);
ByteArrayOutputStream oStrEeam = new ByteArrayOutputStream();
JRExporter exporter = new JRRtfExporter();
exporter.setParameter(JRExporterParameter.JASPER_PRINT, jasperPrint);
exporter.setParameter(JRExporterParameter.OUTPUT_STREAM, oStrEeam);
exporter.exportReport();
byte[] bytes = oStrEeam.toByteArray();
if(bytes != null && bytes.length > 0) {
response.reset();
response.setContentType("application/ms_word");
response.setHeader("Content-disposition", "attachment; filename=zhiyou_erp.doc");
response.setContentLength(bytes.length);
ServletOutputStream ouputStream = response.getOutputStream();
ouputStream.write(bytes, 0, bytes.length);
ouputStream.flush();
ouputStream.close();
}
}
catch (Exception e) {
System.out.println(e);
}finally{
con.close();
}
分享到:
相关推荐
JasperReports结合iReport制作报表教程
jasperReports+iReport3.0.0 生成各种格式的报表文件 以及iReport3.0的操作
具体模版*.jrxml 博文链接:https://xiaobo.iteye.com/blog/34774
JasperReports iReport中文教程.pdf
这个是比较详细的jaspreports及ireport报表开发教程。
a tutorial on reporting in java using jasperreports, ireport abd jfreechart.pdf
JasperReport+iReport报表开发手册.pdf
JasperReports+iReport在eclipse中的使用JasperReports+iReport在eclipse中的使用
JasperReports,iReport制作报表,功能JAR 导入直接运行
收集了五个关于iReport Jasperreports制作报表的中文资料 ireport图文教程.pdf、JasperReports结合iReport制作报表教程.pdf、jasperreportireport中文指南.pdf等
A Tutorial on JasperReports, iReport and JFreeChart
jasperreports+ireport在eclipse中的使用
java报表开发的必备神奇,介绍jasperreports和Ireport的作用和操作,非常有用,非常适用与我等 被分配任务却无人教导的屌丝 另附:applet报表打印的文章,不用再搜了 http://gddzmr.iteye.com/blog/192536
NULL 博文链接:https://qdjinxin.iteye.com/blog/350194
iReport-3.7.0 + jasperreports-3.7.0生成报表
因为项目中 有用的ireport 又需要用到分页 网站看了下也看不到相关的资料 自己研究了和试了很长时间 才搞定 ,希望能省去大家的时间所以决定写点东西上在csdn 上供大家下载 参考 也希望大家多提意见 本资源下载不...