JasperReport学習ノート2-簡単なレポート作成例
簡単なjrxmlファイルを作成します。
二、JRXMLファイルをjasperファイル、ファイルフローまたはJasperReportオブジェクトに解析する(実際の状況による)
1.WEBプロジェクトを作成し、WEBサイトのディレクトリの下にディレクトリレポートを作成する
2.JasperCompleManager内の方法でJRXMLファイルを解析してjasperファイル、ファイルフローまたはJasperReportオブジェクトになります。
JRXMLファイルのparseをコピーしてjasperファイルにします。
次のとおりです
JasperPrintオブジェクトを生成
<?xml version="1.0"?>
<!DOCTYPE jasperReport
PUBLIC "-//JasperReports//DTD Report Design//EN"
"http://jasperreports.sourceforge.net/dtds/jasperreport.dtd">
<jasperReport name="FirstReport">
<detail>
<band height="20">
<staticText>
<reportElement x="20" y="0" width="200" height="20" />
<text><![CDATA[If you don't see this, it didn't work]]></text>
</staticText>
</band>
</detail>
</jasperReport>
以上は簡単なJRXMLファイルであり、実際には標準XMLファイルであり、<jasperReport>はルート要素であり、<static Text>は静的データを表し、<reportElement>は<staticText>の位置と幅を定義し、<text>は実際の静的データを定義している。二、JRXMLファイルをjasperファイル、ファイルフローまたはJasperReportオブジェクトに解析する(実際の状況による)
1.WEBプロジェクトを作成し、WEBサイトのディレクトリの下にディレクトリレポートを作成する
2.JasperCompleManager内の方法でJRXMLファイルを解析してjasperファイル、ファイルフローまたはJasperReportオブジェクトになります。
JRXMLファイルのparseをコピーしてjasperファイルにします。
JasperCompileManager.compileReportToFile("WebRoot/report/jasperreports_demo.jrxml", "WebRoot/report/langhua.jasper");
またはJasperReportオブジェクトを生成します。
public static JasperReport compileReport("WebRoot/report/jasperreports_demo.jrxml")
またはストリームの方法で生成されます。
public static void compileReportToStream(InputStream inputStream,OutputStream outputStream)
もちろんJasper CommpileManagerもJasperファイルをJRXMLに変更することができます(JRXMLフローを含めて、全部静太の方法です。)
writeReportToXmlStream
writeReportToXmlFile
三つ目は、JasperReportオブジェクト、ファイルフローまたはjasperファイルがあれば、JasperFillManagerを使ってJasperPrintオブジェクト、jrprintファイル、jrprintファイルフローを生成することができます。次のとおりです
JasperPrintオブジェクトを生成
public static JasperPrint fillReport(JasperReport jasperReport,Map parameters, JRDataSource dataSource)
他のものを生成
//
public static void fillReportToFile(
String sourceFileName,
String destFileName,
Map parameters,
Connection connection
)
//
public static void fillReportToStream(
JasperReport jasperReport,
OutputStream outputStream,
Map parameters,
Connection connection
)
ステップ4で、JasperExport Managerを使ってエクスポートまたは表示します。
JasperExportManager.exportReportToHtmlFile(jasperPrint, "c://1.html");
JasperExportManager.exportReportToPdfFile(jasperPrint, "c://1.pdf");
//
完全な例
JasperReport jasperReport;
JasperPrint jasperPrint;
try{
jasperReport = JasperCompileManager.compileReport("WebRoot/report/jasperreports_demo.jrxml");
jasperPrint = JasperFillManager.fillReport(jasperReport, new HashMap(),new JREmptyDataSource());
JasperExportManager.exportReportToPdfFile(jasperPrint, "c://1.pdf");
}
catch (JRException e){
e.printStackTrace();
}