Javaで帳票出力するには、iReport と JasperReports を使うのが簡単そうだ。
簡単なメモ。
iReport
概要
iReportは帳票のデザインテンプレートを作成するソフト。
作成したデザインテンプレートはJasperReportsで帳票に変換する。チュートリアル
- iReportに触れる
ここを読めば使えるようなる。
- iReportに触れる
注意点
- フォントの設定
日本語を使う場合、間違ったフォントを選択すると日本語が表示されない - ゴシック体
- PDF font name = HeiseiKakuGo-W5
- PDF Encoding = UniJIS-UCS2-H
- 明朝体
- PDF font name = HeiseiMin-W3
- PDF Encoding = UniJIS-UCS2-HW-H
- フォントの設定
JasperReports
概要
iReportで作成したデザインテンプレートを帳票に作成するライブラリ。処理の流れ
iReportで作ったテンプレートファイル(XML)をコンパイルしてjasperファイルを作成
JasperCompileManager.compileReportToFile("sample.jrxml", "sample.jasper");
jasperファイルとDataSource、MapからPDFファイルを作成
byte[] bytes = JasperRunManager.runReportToPdf("sample.jasper", paramMap, dataSource);
出力
//Servletの場合 response.setContentType("application/pdf"); response.setContentLength(bytes.length); OutputStream out = response.getOutputStream(); out.write(bytes); out.flush(); out.close();
注意点
- テンプレートファイルのコンパイルは一回だけでいい。
テンプレートファイルのコンパイルは重たい処理なので、何度も行わないようにする工夫が必要。
- テンプレートファイルのコンパイルは一回だけでいい。
インストールするライブラリ