先说两句报表框架的选择,JasperReport和BIRT都是不错的JAVA报表工具,不过BIRT和Spring的整合比较麻烦,Spring官网论坛里有篇不错的文章,不过我觉得还是挺麻烦的。而Jasper简单一些。
SpringMVC和JasperReport的整合方法有很多,这里介绍一下Spring文档里的官方方法,这个方法比较简单,编写的代码很少,缺点是不自动,每加一个报表都需要修改配置文件,重启服务。对于专门做报表的WEB服务来说就不合适了。
1、在配置文件中增加:
- <beans:bean id="viewResolver" class="org.springframework.web.servlet.view.ResourceBundleViewResolver">
- <beans:property name="basename" value="views"/>
- </beans:bean>
注意Resolver的顺序。
2、在classpath里面增加views.properties。我的文件放在src/main/resources下面。
views的内容是:
- #设置报表输出格式
- simpleReport.(class)=org.springframework.web.servlet.view.jasperreports.JasperReportsPdfView
- #设置报表文件路径
- simpleReport.url=/WEB-INF/reports/report1.jasper
- #数据的key值
- simpleReport.reportDataKey=datasource
每一个表报都需要一套如上的配置。spring支持运行时自动选择报表输入格式。详细可以查spring的官方文档。
3、用iReport编辑报表。iReport版本是4.5.1
iReport的pdf有个传统的中文问题,网上有很多介绍文章。在ireport的lib下有itext-2.1.7.jar、iTextAsian-2.1.7.jar和iText-AsianCmaps-2.1.7包。(可在附件中下载)
我以为iReport4.5.1能先进点,没想到还是用iText-2.1.7和配套的其他两个包,别用最新版本,最新版本无效。
1)将上述3个包加到iReport 工具-->选项-->Classpath里
2)iReport 工具-->选项-->Fonts里,将这3个包前面的复选框打钩。
3)在编辑报表的Text框时,编辑其属性如下
Pdf Font name:STSong-Light;
Pdf Embedded:勾上
Pdf Enccoding:UniGB-UCS2-H (Chinese Simplified)
4)将这3个jar包加到Eclipse项目ClassPath下。
这样pdf就可以正常显示中文了。
将编辑好的.jasper文件拷贝到Eclipse项目中。
4、编写Controller。
- import java.util.ArrayList;
- import java.util.List;
- import javax.servlet.http.HttpServletRequest;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.ModelMap;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.servlet.ModelAndView;
- @Controller
- @RequestMapping("/report.html")
- public class ReportCtrl {
- private static final Logger logger = LoggerFactory.getLogger(ReportCtrl.class);
- @RequestMapping()
- public ModelAndView showReport(ModelMap model, HttpServletRequest request) {
- logger.info("ReportCtrl-showReport start!");
- DataSource map = new DataSource();
- map.setPlanno("APP1-1039-0990");
- map.setPlanname("上海出租车");
- List<DataSource> beanData = new ArrayList<DataSource>();
- beanData.add(map);
- model.addAttribute("datasource", beanData); //datasource和views.properties配置的相同
- logger.info("ReportCtrl-showReport end!");
- return new ModelAndView("simpleReport", model); //simpleReport和views.properties配置的相同
- }
- //bean定义
- public class DataSource {
- private String planno = "";
- private String planname = "";
- public String getPlanno() {
- return planno;
- }
- public void setPlanno(String planno) {
- this.planno = planno;
- }
- public String getPlanname() {
- return planname;
- }
- public void setPlanname(String planname) {
- this.planname = planname;
- }
- }
- }
运行就可以显示报表了。
相关推荐
ireport+jasper中文手册 pdf版
Dynamic+Jasper+Mysql连接生成报表示例
Java Project for reporting using jasper report + struts2
springmvc+jasper 适合学习适用。JasperReport是一个强大、灵活的报表生成工具,能够展示丰富的页面内容,并将之转换成PDF,HTML,或者XML格式。该库完全由Java写成,可以用于在各种Java应用程序,包括J2EE,Web应用...
Jasper report用户手册Jasper report用户手册Jasper report用户手册Jasper report用户手册
Spring-MVC-碧玉报告 Spring MVC Jasper报告集成主屏幕 Jasper报表为HTML Jasper报表导出为PDF
spring MVC Web应用中集成Jasper报表工具。教程涵盖的技术点有:报表自定义数据源的使用;报表渲染、呈现的配置与实现;iReport报表设计器的使用(报表模板设计)等。
在本教程中,我们将学习如何在一个简单的spring MVC Web应用中集成Jasper报表工具。教程涵盖的技术点有:报表自定义数据源的使用;报表渲染、呈现的配置与实现;iReport报表设计器的使用(报表模板设计)等。
Jersey 插件在 Jersey 模板系统中集成 Jasper Report,生成 PDF 文件。 安装 安装它有两个步骤: 在 pom.xml 中包含相关性; 注册 jersey-mvc-jasper 的 MvcFeature; 包含依赖 <groupId>br.uff.sti ...
不知道什么时候获取的资源,感觉挺好~~不知道CSDN有没有,先贡献了再说。
直接maven clean install之后就可以
ireport+jasper报表,报表时项目中不可缺少的模块,我把前辈的东西拿来修改了一下终于实现了自定义报表。希望对大家有帮助,由于资源分不多了,因此3分就当做是辛苦分吧,代码详尽,数据库字段自己定义,有问题联系...
上传个免费的,文档加了图了。之前那个下载下来是有点儿问题,里面没图。
通过ireport生成模版,使用jasperreport调用模版,通过servlet生成pdf格式的文件,显示于页面以实现本地打印功能
jersey-mvc-jasper-源码.rar
这些资源主要介绍了报表工具的使用,包括报表模板工具ireport 和jasper包的使用,通过jasper将报表模板关联到java代码中,然后由程序向报表模板填充数据,并报表导出成各种文件格式
用jasper report生成报表需要的jar包,都在这
Jasper Report
春天碧玉的报告如何使用Spring Boot和Jasper生成动态报告下载JasperSoft Studio工具链接: : //community.jaspersoft.com/project/jaspersoft-studio/releases
Jasper Report 报表的使用步骤,及基本的应用详细描述