如果我理解你的問題,你可以通過參數傳遞你的JTextField數據轉換成報告。
JasperReport jasperReport;
JasperPrint jasperPrint;
HashMap params = new HashMap();
FileInputStream reportStream;
try {
FileInputStream reportStream = new FileInputStream(new File("report.jasper");
HashMap params = new HashMap();
params.put("TEXT_VALUE", jTextField.getText());
JasperReport jasperReport = (JasperReport) JRLoader.loadObject(reportStream);
JasperPrint jasperPrint = JasperFillManager.fillReport(
jasperReport, params, DriverManager.getConnection("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8", root, root));
JasperViewer jReportsViewer = new JasperViewer(jasperPrint, false);
jReportsViewer.setFitWidthZoomRatio();
jReportsViewer.setVisible(true);
reportStream.close();
在你報告中,你必須創建類java.lang.String或Object的參數TEXT_VALUE。之後,您需要在textField中將其定義爲$ P {TEXT_VALUE} ... 我希望這是您正在尋找的答案。
* iReport *只是一個用於構建報表模板的GUI設計器。你是什麼意思:'我想生成iReport'? –
我的意思是我想生成報告usig iReport/JasperReport模板。我通過我的數據庫使用這個。通過執行sql查詢獲取我想要保存在pdf/print中的報告。但現在,我想從jTextfield(而不是從數據庫)生成報告數據到iReport中的textfield。 – miles
您可以使用[JavaBean Data Sources](http://jasperreports.sourceforge.net/sample.reference/datasource/index.html#javabeandatasources) –