Java 如何在从DefaultTableModel传递的Jasper报告表中显示数据
我在JavaSwing中从事一个项目,并在JasperReport中报告 我用Jasper report设计了这个报告,我从 Java类。 现在,我想以TableModel的形式发送数据,以在报表表中设置值,但jasper报表表没有以TableModel的形式显示设置的表数据 甚至报表文件也不是通过JAR打开的。如果我正在创建jar,Jasper报告页面将抛出异常 我希望将报表表中的表模型数据发送到java代码中的tableModelData中。我正在使用以下代码Java 如何在从DefaultTableModel传递的Jasper报告表中显示数据,java,jasper-reports,Java,Jasper Reports,我在JavaSwing中从事一个项目,并在JasperReport中报告 我用Jasper report设计了这个报告,我从 Java类。 现在,我想以TableModel的形式发送数据,以在报表表中设置值,但jasper报表表没有以TableModel的形式显示设置的表数据 甚至报表文件也不是通过JAR打开的。如果我正在创建jar,Jasper报告页面将抛出异常 我希望将报表表中的表模型数据发送到java代码中的tableModelData中。我正在使用以下代码 package pmc;
package pmc;
import java.util.HashMap;
import javax.swing.table.DefaultTableModel;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.data.JRTableModelDataSource;
import net.sf.jasperreports.view.JasperViewer;
public class SimpleReport1 {
DefaultTableModel tableModel;
public SimpleReport1() {
JasperPrint jasperPrint = null;
TableModelData();
try {
JasperCompileManager.compileReportToFile("src/reports/report1.jrxml");
jasperPrint = JasperFillManager.fillReport("src/reports/report1.jasper", new HashMap(),
new JRTableModelDataSource(tableModel));
JasperViewer jasperViewer = new JasperViewer(jasperPrint);
jasperViewer.setVisible(true);
} catch (JRException ex) {
ex.printStackTrace();
}
}
更改此行:
JasperCompileManager.compileReportToFile("src/reports/report1.jrxml");
致:
更改此行:
JasperCompileManager.compileReportToFile("src/reports/report1.jrxml");
致:
JasperCompileManager.compileReportToFile("src/reports/report1.jrxml","src/reports/report1.jasper");