如何在Java代码中使用相同的jrxml文件。?

如何在Java代码中使用相同的jrxml文件。?,java,ireport,Java,Ireport,我正在使用 filename.jrxml 文件来创建一个简单的报告 itext4.8.0 它工作得很好,但我像这样传递参数 $p{userId}] 现在我想用同样的方法 filename.jrxml 使用java代码如何实现这一点?我主要关心的是,当我在ireport中运行报告时,如何像在ireport中一样传递参数值?它正在打开参数的弹出窗口,我正在输入值。但在Java代码中,如何传递该参数 注意:-我不想传递与报表的连接。下载jasperreport引擎 final Map<Strin

我正在使用

filename.jrxml

文件来创建一个简单的报告

itext4.8.0

它工作得很好,但我像这样传递参数

$p{userId}]

现在我想用同样的方法

filename.jrxml

使用java代码如何实现这一点?我主要关心的是,当我在ireport中运行报告时,如何像在ireport中一样传递参数值?它正在打开参数的弹出窗口,我正在输入值。但在Java代码中,如何传递该参数


注意:-我不想传递与报表的连接。下载jasperreport引擎

final Map<String,Object> parameter = new HashMap<String, Object>();
parameter.put("userId", 1l);
JasperFillManager.fillReport("filename.jasper", parameter, getData());

// set your own params for this method
public JRDatasource getData() { 
  // initialize a collection of Objects
  // Oh yes the query
  final Query query = getQuery("from SomeObject");
  final List<SomeObject> collection = (List<SomeObject>)query.list();
  return new JRBeanCollectionDataSource(collection);
}

我在这里找到了解决方案

谢谢你的回复。这里的getData()是什么?另外,查询是fileName.jrxml文件的一部分。我在jrxml文件中有查询JRBeanCollectionDataSource是报表的新数据集您的报表中的查询被忽略了,但我想使用我在jrxml文件中编写的相同查询。任何人都知道如何解决此问题
JasperFillManager.fillReport(jasperReport, parameter, connection);