使用jasperreposts生成报表方法二,三
来源:互联网 发布:人工智能学术会议 编辑:程序博客网 时间:2024/05/16 06:05
第二种方法:在后台工具类中将我们要需要的报表类型转成byte数组,然后再jsp页面重组得到报表,补充一下我这里的是直接让报表在浏览器中在线打开的(三种方法都是)
工具类:
package com.unite.util_jasperreports;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExporterParameter;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import net.sf.jasperreports.engine.export.JRHtmlExporter;
import net.sf.jasperreports.engine.export.JRHtmlExporterParameter;
import net.sf.jasperreports.engine.export.JRXlsExporter;
import net.sf.jasperreports.engine.export.JRXlsExporterParameter;
public class JrtsUtil {
public static byte[] generatePDF(String reportTitle, String reportFilePath,List<Object> list) throws FileNotFoundException {
// TODO Auto-generated method stub
//begCustNo,endCustNo分别为查询传入的开始编号,结束编号.
//jdbcCustomerDao = new JdbcCustomerDao();
Map parameters = new HashMap();//参数设定
parameters.put("lie", "select * from User");//报表标题
//List list = jdbcCustomerDao.getAllCustomer(begCustNo, endCustNo);
try {
JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(list);
JasperPrint jasperPrint = JasperFillManager.fillReport(reportFilePath, parameters, ds);
return JasperExportManager.exportReportToPdf(jasperPrint);
return null;
} catch (JRException e) {
e.printStackTrace();
工具类:
package com.unite.util_jasperreports;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRExporterParameter;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSour
import net.sf.jasperreports.engine.export.JRHtmlExporter;
import net.sf.jasperreports.engine.export.JRHtmlExporterParameter;
import net.sf.jasperreports.engine.export.JRXlsExporter;
import net.sf.jasperreports.engine.export.JRXlsExporterParameter;
public class JrtsUtil {