======================================================== Jaxcel http://sourceforge.jp/projects/jaxcel/ ======================================================== Copyright 2014 Hanei Management Co.,Ltd. http://www.hanei.co.jp/ ======================================================== ------------------------------------------- 1. Jaxcel とは ------------------------------------------- Jaxcelとは、Excelにテンプレート式を書くことによって、動的にデータを埋め込み、Excel帳票を出力するライブラリです。 Excelファイル自体をテンプレートとして用いることが可能な為、レイアウトの変更等も簡単に行えます。 ------------------------------------------- 2. 主な特徴 ------------------------------------------- ・Excelファイル自体にデータ埋め込み式を記述する為、専用ツールの知識や習得が不要。 ・フォントサイズや罫線等の装飾は、テンプレートとなるExcelファイルで設定可能。 ・チャートやピボットテーブルをテンプレートとして設定可能。 ・複数シートが存在するブックに対応。 ・マクロ埋め込みブックに対応。 ・Excel97-2003ブック形式(.xls)、2007以降のブック形式(.xlsx .xlsm)に対応。 ・リストや配列等の繰り返し出力(foreach)、データによる出力・非出力(if)の制御構文が使用可能。 ・制御構文は行/列全体のみでなく、矩形範囲での制御が可能。 ・制御構文毎に、制御方向(行/列)の指定が可能。 ・制御構文内では埋め込みデータ以外に、下記の繰返し生成(foreach句使用時)、非出力(if句使用時)が可能。 ・オートシェイプや画像等のオブジェクト ※1 ・テーブル ※1 ・結合セル ・オートフィルタ ※2 ・数式の参照範囲も制御構文に連動。 ・埋め込みデータの解析にはApache Commons JEXLを使用し、柔軟な埋め込み式の記述が可能。 ※1:Excel2007以降のブック形式(.xlsx .xlsm)のみ対応。 ※2:if句による出力・非出力のみ対応。 ------------------------------------------- 3. サンプルの実行 ------------------------------------------- 配布ファイルのsample/binディレクトリ配下のバッチファイル、シェルスクリプトファイルの実行で、 sample/resourcesディレクトリ配下の同名のExcelテンプレートファイルと、json形式のデータ ファイルを使用し、sample/outputディレクトリに出力結果のExcelファイルが生成されます。 ※:実行環境にjava1.7以上がインストールされていること。 ------------------------------------------- 4. Java ソースサンプル ------------------------------------------- // Jaxcelレポートメーカーオブジェクトの生成 ReportMaker jaxcel = new ReportMaker(); // パラメータとなるMapブジェクトの生成・データの投入 HashMap parameter = new HashMap<>(); parameter.put("data1", "Hello"); parameter.put("data2", "Jaxcel"); // テンプレートExcelファイル、パラメータ、出力結果Excelファイルを指定。 // result.xlsxファイルが生成される。 jaxcel.makeReport(new File("template.xlsx"), parameter, new File("result.xlsx")); ※:詳細は配布ファイルのJavadocを参照願います。 ------------------------------------------- 4. セットアップ ------------------------------------------- 配布ファイルの jaxcel-xx.xx.xx.jar をクラスパスを含めます。 また、Jexcelの使用には下記のライブラリが必要となります。 ・Apache POI 3.10 ・poi-3.10-FINAL-20140208.jar ・poi-ooxml-3.10-FINAL-20140208.jar ・ooxml-schemas-1.1.jar ※ ・Apache POIは下記のライブラリが必要となります。(Apache POI 3.10-FINALの場合) ・commons-codec-1.5.jar ・dom4j-1.6.1.jar ・xmlbeans-2.3.0.jar ※:Apache POIのダウンロードに含まれるpoi-ooxml-schemas-3.10-FINAL-20140208.jarではありません。 poi-ooxml-schemasのフルセットとなるooxml-schemasが必要です。 http://jakarta.apache.org/poi/ http://repo1.maven.org/maven2/org/apache/poi/ooxml-schemas/1.1/ ・Apache Commons JEXL 2.1.1 ・commons-jexl-2.1.1.jar http://commons.apache.org/proper/commons-jexl/ ・Apache Commons Lang 3.3 ・commons-lang3-3.3.2.jar http://commons.apache.org/proper/commons-lang/ ・SLF4J 1.7 ・slf4j-api-1.7.7.jar http://www.slf4j.org/ ・JSONIC 1.3 ・jsonic-1.3.5.jar ※ ※コマンドラインツール「MakeReportTool」使用時のみ必要です。 http://jsonic.sourceforge.jp/ ------------------------------------------- 5. 免責事項 ------------------------------------------- 本ソフトウエアを利用する、もしくは利用できないことにより発生した一切の損害(一次的、二次的に関わらず) および第三者からなされる請求について、株式会社阪栄マネージメントは一切責任を負いません。 各自の責任においてご使用下さい。 ------------------------------------------- 6. ライセンス ------------------------------------------- 本ソフトウェアはLGPL v3にて公開しています。 --