由于业务需求需要接触一些开源的报表,因为这方面需求量不是很大,而且小项目没办法直接购买润乾,帆软报表等,最近开始研究了一下开源的图表开发。
1.JFreeChart 优点网上例子代码多,上手方便,缺点生成的图表有些不够清晰,采用纯编码方式,不够直观。
2.BIRT报表,BIRT报表是IBM公司提供的开源项目 ,优点:大公司提供,品质值得信赖,而且还有集成在Eclipse中的开发工具,直观方便,而且和以前用过的其他报表的设计思路相差不大,可以生成复杂的图表。最大的好处是可以直接嵌入到已经开发好的JAVAWEB项目中去。
设计思路:新建图表,新建数据源 ,新建数据集,绑定数据集于图表之间的关系,可以直接预览。预览过后,将.rptdesign为后缀的文件拷贝到自己的javaWEB项目中,然后上官网上下载 birt-runtime-4_4_1-20140916.zip 也就是运行时的例子,我用的是4.4的版本解压后有两个文件夹 :ReportEngine 和 WebViewerExample。打开WebViewerExample将下面的资源文件拷贝到自己的项目下面,最主要的是合并WEB-INF下面的web.xml文件,将WebViewerExample的WEB-INF下面的web.xml内容拷贝到自己的javaWEB项目的web.xml文件中,启动tomcat根据例子上的就可以访问了,访问有三种方式 :
<p><a href="<%= request.getContextPath( ) + "/frameset?__report=report/chartReport1.rptdesign&sample=my+parameter" %>">View frameset</a>
<p><a href="<%= request.getContextPath( ) + "/preview?__report=report/chartReport1.rptdesign&sample=my+parameter" %>">View preview </a>
<p><a href="<%= request.getContextPath( ) + "/run?__report=report/chartReport1.rptdesign&sample=my+parameter" %>">View run </a>
其中preview方式访问速度最快。