准备工作:
下载jfreeReport0.8.7 地址:http://www.jfree.org/jfreereport/index.php
使用JFreeReport生成报表通常需要以下三个基本步骤:
A. 生成可通过TableModel接口访问的数据,如本例中的createData方法完成的功能。
B. 生成一个JFreeReport实例,他定义了我们如何格式化显示数据,如本例中的createReportDefinition方法完成的功能。
C. 将数据和JFreeReport实例连接起来,并且将该JFreeReport实例传给PreviewDialog的一个实例显示给用户。
下面开始>>>>>
1. 新建一个WEB工程,在WebRoot\lib中import 如下jar文件:jcommon-1.0.1.jar jfreereport-0.8.7.jar jfreereport-demo-0.8.7.jar jfreereport-servlet-demo-0.8.7.jar
(可在jfreereport包中解压得到)
2. 写一个Demo.java 加入到工程的src包中. 内容如下:
import java.awt.Color;
import java.awt.geom.Point2D;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import org.jfree.report.ElementAlignment;
import org.jfree.report.JFreeReport;
import org.jfree.report.JFreeReportBoot;
import org.jfree.report.ReportProcessingException;
import org.jfree.report.demo.helper.DefaultCloseHandler;
import org.jfree.report.demo.helper.DemoHandler;
import org.jfree.report.demo.helper.PreviewHandler;
import org.jfree.report.elementfactory.TextFieldElementFactory;
import org.jfree.report.modules.gui.base.PreviewDialog;
import org.jfree.ui.FloatDimension;
import org.jfree.util.Log;
public class Demo implements DemoHandler
{
private class HelloWorldPreviewHandler implements PreviewHandler
{
public HelloWorldPreviewHandler()
{
}
public void attemptPreview()
{
executeReport();
}
}
public Demo (){
}
protected void executeReport ()
{
final TableModel data = createData();
final JFreeReport report = createReportDefinition();
report.setData(data);
try
{
final PreviewDialog preview = new PreviewDialog(report);
preview.addWindowListener(new DefaultCloseHandler());
preview.pack();
preview.setVisible(true);
}
catch (ReportProcessingException e)
{
Log.error("Failed to generate report ", e);
}
}
责任编辑:小草