--- /dev/null
+/**
+ * Copyright 2014 Hanei Management Co.,Ltd.
+ *
+ * This file is part of Jaxcel
+ *
+ * Jaxcel is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Jaxcel is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.hanei.jaxcel.example;
+
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+
+import org.apache.commons.lang3.BooleanUtils;
+import org.apache.commons.lang3.RandomStringUtils;
+import org.apache.commons.lang3.RandomUtils;
+import org.hanei.jaxcel.report.ReportMaker;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * JavaオブジェクトからのExcel帳票出力サンプルクラス
+ *
+ * @version 1.00.00
+ * @author Noboru Saito
+ */
+public class MakeReportWithObject {
+
+ private static final Logger log = LoggerFactory.getLogger(MakeReportWithObject.class);
+
+ /**
+ * ExcelテンプレートファイルにJavaObjectサンプルデータを挿入することでExcel帳票を生成、Excel帳票ファイルを出力する。
+ *
+ * @param args arg1: Excelテンプレートファイルパス<br>
+ * arg2: パラメータJSONファイルパス<br>
+ * arg3: Excel帳票出力ファイルパス
+ *
+ * @throws Exception
+ */
+ public static void main(String[] args) throws Exception {
+
+ if(args.length != 2) {
+ System.out.println("illegal arguments.");
+ System.out.println("arg1: template excel file path");
+ System.out.println("arg2: output excel file path");
+ System.out.println("...relative path from the build root. or absolute path");
+ System.exit(0);
+ }
+
+ // parameter
+ LinkedHashMap<String, Object> parameter = new LinkedHashMap<>();
+
+ // object data
+ SampleObject objData = new SampleObject();
+ objData.setDataA("Hello");
+ objData.setDataB(123);
+ objData.setDataC(1.23);
+ objData.setDataD(true);
+ objData.dataApub = "Jaxcel!!";
+ objData.dataBpub = 456;
+ objData.dataCpub = 4.56;
+ objData.dataDpub = false;
+ parameter.put("objData", objData);
+
+ // object array data
+ ArrayList<SampleObject> aryData = new ArrayList<>();
+ for(int i = 0; i < 10; i++) {
+ SampleObject aryObjData = new SampleObject();
+
+ aryObjData.setDataA(RandomStringUtils.randomAlphabetic(RandomUtils.nextInt(5, 10)));
+ aryObjData.setDataB(RandomUtils.nextInt(0, 1000));
+ aryObjData.setDataC(RandomUtils.nextDouble(0, 1000));
+ aryObjData.setDataD(BooleanUtils.toBoolean(RandomUtils.nextInt(0, 2)));
+ aryObjData.dataApub = (RandomStringUtils.randomAlphabetic(RandomUtils.nextInt(5, 10)));
+ aryObjData.dataBpub = RandomUtils.nextInt(0, 1000);
+ aryObjData.dataCpub = RandomUtils.nextDouble(0, 1000);
+ aryObjData.dataDpub = BooleanUtils.toBoolean(RandomUtils.nextInt(0, 2));
+
+ aryData.add(aryObjData);
+ }
+ parameter.put("arrayData", aryData);
+
+ ReportMaker maker = new ReportMaker();
+ log.info("====== makeReport Start ======");
+ maker.makeReport(new File(args[0]), parameter, new File(args[1]));
+ System.out.println("output complate " + args[1]);
+ System.out.println("see debug log ../log/jaxcel.log");
+ log.info("====== makeReport End ======");
+ }
+
+}
--- /dev/null
+/**
+ * Copyright 2014 Hanei Management Co.,Ltd.
+ *
+ * This file is part of Jaxcel
+ *
+ * Jaxcel is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Jaxcel is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+package org.hanei.jaxcel.example;
+
+/**
+ * サンプルデータオブジェクト
+ *
+ * @author noboru saito
+ */
+public class SampleObject {
+ private String dataA;
+ private int dataB;
+ private double dataC;
+ private boolean dataD;
+
+ public String dataApub;
+ public int dataBpub;
+ public double dataCpub;
+ public boolean dataDpub;
+
+ /**
+ * @return dataA
+ */
+ public String getDataA() {
+ return dataA;
+ }
+ /**
+ * @param dataA セットする dataA
+ */
+ public void setDataA(String dataA) {
+ this.dataA = dataA;
+ }
+ /**
+ * @return dataB
+ */
+ public int getDataB() {
+ return dataB;
+ }
+ /**
+ * @param dataB セットする dataB
+ */
+ public void setDataB(int dataB) {
+ this.dataB = dataB;
+ }
+ /**
+ * @return dataC
+ */
+ public double getDataC() {
+ return dataC;
+ }
+ /**
+ * @param dataC セットする dataC
+ */
+ public void setDataC(double dataC) {
+ this.dataC = dataC;
+ }
+ /**
+ * @return dataD
+ */
+ public boolean isDataD() {
+ return dataD;
+ }
+ /**
+ * @param dataD セットする dataD
+ */
+ public void setDataD(boolean dataD) {
+ this.dataD = dataD;
+ }
+
+}
+/**
+ * Copyright 2014 Hanei Management Co.,Ltd.
+ *
+ * This file is part of Jaxcel
+ *
+ * Jaxcel is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Jaxcel is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
package org.hanei.jaxcel.util;
import java.io.File;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-
+/**
+ * Excel帳票出力コンソールツールクラス
+ *
+ * @version 1.00.00
+ * @author Noboru Saito
+ */
public class MakeReportTool {
private static final Logger log = LoggerFactory.getLogger(MakeReportTool.class);
/**
- * ExcelテンプレートファイルにJSONファイルのデータを挿入することでExcel帳票を生成、Excel帳票ファイルを出力する。
+ * ExcelテンプレートファイルにJSONファイルのデータを挿入することでExcel帳票を生成、Excel帳票ファイルを出力する。<br>
*
* @param args arg1: Excelテンプレートファイルパス<br>
* arg2: パラメータJSONファイルパス<br>