gpt4 book ai didi

java - JasperFillManager 填充导出的文件

转载 作者:行者123 更新时间:2023-12-01 14:52:39 25 4
gpt4 key购买 nike

我正在尝试导入 net.sf.jasperreports.engine.export 以导出汽车的所有详细信息(数量、客户端、构造函数、类型、颜色......)。所有信息都存储在数据库中。

事实上,我已经成功生成了不同类型的文件(XML、doc、docx、pdf ..),名称命名正确,大小设置为 A4,并且文件可以位于正确的位置。但所有的行都是空的,我想填充里面的数据。我想使用 fill() 方法并使用 JasperFillManager 来填充空白。但这不起作用。我不知道如何使用 JasperFillManager 来查找所有信息。有人可以帮助我吗?

  /**
* Initializes this method.
*
* @param model
* @param pageType
* @param orientation
* @param outputType
* @param destination
*/
private void init(ExportModel model, PAGE_TYPE pageType,
PAGE_ORIENTATION orientation, OUTPUT_TYPE outputType,
String destination){
this.model = model;
this.printerData = new PrinterData();
this.printerData.setUseSql(false);
this.printerData.setPageFormat(pageType);
this.printerData.setPageOrientation(orientation);
this.printerData.setOutputType(outputType);
this.printerData.setDestination(destination);

}

这是类(class)的首字母。 我想写一个函数:

   public static void fill()
{
try
{
JasperFillManager.fillReportToFile("static.jasper",null,new JREmptyDataSource());

} catch(JRException e)
{
e.printStackTrace();
}
}

}

非常感谢!如果有示例代码就更好了!

最佳答案

您正在将 JREmptyDataSource 传递给填充管理器。这实际上是不向报告传递任何数据。您应该使用其他数据源之一,可能是JRResultSetDataSource。您可以在此处获取常用数据源的概述:link .

如果您已经查询了数据库并获得了 java.sql.ResultSet,则可以使用它来构造 JRResultSetDataSource 并将其传递给填充管理器。

或者,您可以将数据库连接(作为 java.sql.Connection)传递给填充管理器,并将 SQL 查询放入报表设计中。

关于java - JasperFillManager 填充导出的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14690647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com