Jasperreport 与SpringMVC整合(使用CSVDataSource的应用)
来源:互联网 发布:恒生软件待遇 编辑:程序博客网 时间:2024/06/05 15:17
1. 在pom.xml中定义好Maven Dependency:
net.sf.jasperreports jasperreports6.3.1 org.apache.lucene lucene-coreorg.apache.lucene lucene-queryparserorg.olap4j olap4j1.2.0 com.lowagie itext2.1.7 xml-apis xml-apis1.4.01
这里用的是Jasperreport 6.3.1 版本,也可以用6.4.0版本,因为Jasperreport 会自动下载lucene的4.5.1 的版本,与项目中已引用的lucene版本有冲突,所以这里排除了lucene-core和lucene-queryparser, 暂时没发现有什麽问题,Jasperreport可以正常使用。
在Eclipse中选中项目,右键选Maven->Update Project..., 可以将jasperrepot lib Download到项目中。
2. 在SpringMVC Controller中定义一个Get 请求:
@RequestMapping(value = "/helloReport1", method = RequestMethod.GET) @ResponseBody public void getRpt1(HttpServletResponse response) throws JRException, IOException {// InputStream jasperStream = this.getClass().getResourceAsStream("/jasperreports/HelloWorld1.jasper"); InputStream jrxmlStream = this.getClass().getResourceAsStream("/jasperreports/HelloWorld1.jrxml"); Mapparams = new HashMap<>();// JasperReport jasperReport = (JasperReport) JRLoader.loadObject(jasperStream); JasperReport jasperReport= JasperCompileManager.compileReport(jrxmlStream); InputStream csvStream = this.getClass().getResourceAsStream("/jasperreports/result.csv"); String[] columnNames = new String[]{"startTime", "trafficUlData", "trafficDlData"}; JRCsvDataSource csvDS = new JRCsvDataSource(csvStream); csvDS.setRecordDelimiter("\r\n"); csvDS.setFieldDelimiter(','); csvDS.setUseFirstRowAsHeader(true); csvDS.setColumnNames(columnNames); JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, params, csvDS); response.setContentType("application/x-pdf"); response.setHeader("Content-disposition", "inline; filename=helloWorldReport.pdf"); final OutputStream outStream = response.getOutputStream(); JasperExportManager.exportReportToPdfStream(jasperPrint, outStream); }
其中使用了HelloWorld1.jrxml, 可以直接使用编译后的HelloWorld1.jasper,但为了项目调试方便,这里先使用jrxml文件。
使用的数据源是csv文件,result.csv
startTime,trafficUlData,trafficDlData14967298095,30.3333,014968162095,40.3333,114969026095,50.3333,3
这样就将Jasperreport 与SpringMVC整合起来了,发送一个http://<hostname:port>/helloReport1 的请求,就可以通过Jasper生成一份pdf文档下载下来了。
阅读全文
0 0
- Jasperreport 与SpringMVC整合(使用CSVDataSource的应用)
- SpringMVC整合jasperreport做报表
- SpringMVC整合jasperreport做报表
- SpringMVC整合jasperreport做报表
- SpringMVC整合jasperreport做报表
- JasperReport 与 Struts2 整合
- JasperReport和springMVC整合开发小结
- struts2与JFreeChart、JasperReport整合
- struts2与JFreeChart、JasperReport整合
- Springmvc与MyBatis的整合(一)
- Springmvc 与 MyBatis的整合(二)
- struts2与JasperReport整合应用中解决PDF中文不显示问题(让我烦恼了半天)
- JasperReport 和struts2的整合
- JasperReport 和struts2的整合
- UMeditor与SpringMVC的整合和上传图片使用
- 整合Struts2+JasperReport Web报表应用示例
- 整合Struts2+JasperReport Web报表应用示例
- 整合Struts2+JasperReport Web报表应用示例
- centos 7在线安装mysql步骤
- redis服务部署
- 一文读懂卷积神经网络CNN
- 58、对称的二叉树
- 支持手机NFC快捷支付的消费系统应用情况分析
- Jasperreport 与SpringMVC整合(使用CSVDataSource的应用)
- js的轮播
- RAD Studio XE8 unable to perform link[LME288]
- 集合关系图
- CStdioFile 写文件的一个坑
- react-native No bundle URL present
- java发送短信功能工具类及思路详解
- git,svn,github,码云之间联系区别
- dbcp2数据源配置详解