当前位置: 首页 > 知识库问答 >
问题:

如何在DefaultTableModel传递的Jasper报表表中显示数据

酆景辉
2023-03-14

我正在用Java Swing和Jasper Report开发一个项目。

   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();

}}

private void TableModelData() {
    String[] columnNames = {"Id", "Name", "Department", "Email"};
    String[][] data = {
        {"111", "G Conger", " Orthopaedic", "jim@wheremail.com"},
        {"222", "A Date", "ENT", "adate@somemail.com"},
        {"333", "R Linz", "Paedriatics", "rlinz@heremail.com"},
        {"444", "V Sethi", "Nephrology", "vsethi@whomail.com"},
        {"555", "K Rao", "Orthopaedics", "krao@whatmail.com"},
        {"666", "V Santana", "Nephrology", "vsan@whenmail.com"},
        {"777", "J Pollock", "Nephrology", "jpol@domail.com"},
        {"888", "H David", "Nephrology", "hdavid@donemail.com"},
        {"999", "P Patel", "Nephrology", "ppatel@gomail.com"},
        {"101", "C Comer", "Nephrology", "ccomer@whymail.com"}
    };
    tableModel = new DefaultTableModel(data, columnNames);
}
public static void main(String[] args) {
    new SimpleReport1();
}
}

共有1个答案

朱阳晖
2023-03-14

更改这一行:

JasperCompileManager.compileReportToFile("src/reports/report1.jrxml");

致:

JasperCompileManager.compileReportToFile("src/reports/report1.jrxml","src/reports/report1.jasper");
 类似资料:
  • 我想使用不同项目的jasper报告生成一个账单。为此,我定义了一些字符串数组,希望在账单中显示为项目列表。 我填写jasper报告的代码如下 Sling数组用于填充ArrayList,这些ArrayList被传递到HashMap以填充我的报告。HasMap键是在文件中声明Invoice.jrxml参数名称。参数名称被赋予如下文本文件 我想打印项目列表,但我得到的输出是单行逗号分隔值。 此处为示例输

  • 我的JSF2.0web应用程序旨在生成PDF报告。问题是在资源管理器窗口中没有显示PDF报告。我正在使用eclipse kepler,带有apache-tomcat-7.0.52,并且jasper Ireport的版本是4.8。 我将提供整个java类: 我可以在控制台看到消息,并且页面被刷新,但是没有PDF报告出现在explorer屏幕上 我已经用下面的代码替换了上面的PDF方法,但是徒劳的是,

  • 这是我的主报告, 我的子报表 我的bean工厂类,bean被填充,但主报表类字段显示,但子报表列表不显示,请帮助,我已经长出了几缕白发,试图解决这个问题

  • 我使用XML用Java和Intellij IDE生成一个jasper报告,jasper版本是5.0.4。 在文件中有欧元符号,但是在pdf上创建报表时,我看到的是而不是 它是如何来的,我应该向文件添加什么来解决这个问题?

  • 我已将图像保存在oracle数据库中为BLOB。我的模型类包含Byte[]图像;对应于数据库中的BLOB feild。我必须将数据库中的所有图像导出为PDF格式。在java中,我使用了以下代码: 我需要PDF格式的图像。