java ireport 打印_iReport生成pdf打印

本文介绍如何利用iReport-5.0.4版本创建模板,并在Java应用中通过JRBeanCollectionDataSource和JasperFillManager填充数据,生成PDF报告。详细步骤包括设置报表数据源、指定模板路径、导出报表以及保存到本地。涉及到的依赖包有jasperreports、groovy-all、itextasian等。
摘要由CSDN通过智能技术生成

先下载ireport版本 ,我下载的是 iReport-5.0.4 编辑模板 employees_identity_print_templet

@RequestMapping("printEmpPdf")

@ResponseBodypublicResult printEmpPdf(HttpServletRequest request,HttpServletResponse response, Parameter parameter){

Result result=Result.getInitializedResult();try{

parameter=generateParameter(parameter, request);

Map map=parameter.getParam();

List employeeVOList=employeeBiz.printPdfBarcode(map);//报表数据源

JRDataSource jrDataSource = newJRBeanCollectionDataSource(employeeVOList);//模板地址

String jasperSource_adidas= CommonUtils.getAllMessage("jdbc","EMPLOYEES_IDENTITY_PRINT_PDF_TEMPLET")+"employees_identity_print_templet.jasper";

File reportFile= newFile(jasperSource_adidas);

Map param_common=new HashMap();

param_common.put("subReport",jasperSource_adidas);

JasperPrint jasperPrint;

jasperPrint=JasperFillManager.fillReport(reportFile.getPath(), param_common, jrDataSource);

String fullPath= String.valueOf(System.currentTimeMillis()).concat("_员工列表.pdf"); //生成PDF文件保存地址

String filePdfUrl= CommonUtils.getAllMessage("jdbc","IREPORT_FILE_URL");

JRPdfExporter pdfExporter= newJRPdfExporter();

ByteArrayOutputStream baos= newByteArrayOutputStream();

pdfExporter.setParameter(JRExporterParameter.JASPER_PRINT,jasperPrint);

pdfExporter.setParameter(JRExporterParameter.OUTPUT_STREAM, baos);

pdfExporter.exportReport();byte[] bytes =baos.toByteArray();

File file=new File(filePdfUrl+fullPath);

WebUtil.writeByteArrayToFile(file,bytes);

result.baseSucResult(fullPath);

}catch(Exception e){

result.baseFailResult("EmployeeController printEmpPdf error",parameter);

logger.error("EmployeeController printEmpPdf error",e);

}returnresult;

}

这是需要的maven 包

net.sf.jasperreports

jasperreports

5.6.0

org.codehaus.groovy

groovy-all

2.2.2

com.lowagie

itextasian

2.1.7.js2

com.lowagie

itext

2.1.7.js2

net.sourceforge.barbecue

barbecue

1.5-beta1

ireport

ireport-utils

2.0.1

commons-collections

commons-collections

3.2

commons-digester

commons-digester

1.8

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值