这是一个用jasperreports生成pdf的Helloworld程序
首先是一个很简单的Jasper Template 文件名helloworld.jrxml
<?xml version="1.0"?> <!DOCTYPE jasperReport PUBLIC "-//JasperReports//DTD Report Design//EN" "http://jasperreports.sourceforge.net/dtds/jasperreport.dtd"> <jasperReport name="Simple_Report"> <detail> <band height="20"> <staticText> <reportElement x="180" y="0" width="200" height="20"/> <text><![CDATA[Hello World!]]></text> </staticText> </band> </detail> </jasperReport>
然后是java
public class ReportTest {
public static void main(String[] args) throws JRException {
String jrxml = "src/report/helloworld.jrxml";
String jasper = "bin/report/helloworld.jasper";
String pdf = "helloworld.pdf";
JasperCompileManager.compileReportToFile(jrxml, jasper);
JasperRunManager.runReportToPdfFile(
jasper,
pdf,
new HashMap(),
new JREmptyDataSource());
}
}
这里很奇怪的是,虽然JasperRunManager.runReportToPdfFile 提供了更简洁的参数实现
runReportToPdfFile(String sourceFileName, String destFileName, Map parameters) ;
但使用这个实现,只会输出一个空的pdf。必须加个new JREmptyDataSource()的参数才行。