13. システム設定¶
読み込み時及び書き込み時の動作をConfigurationクラスでカスタマイズすることができます。
1 2 3 4 5 6 7 8 9 10 11 12 13 | // 設定用のオブジェクトConfigurationの作成
Configuration config = new Configuration();
// シートが見つからない場合にエラーにしない。
config.setIgnoreSheetNotFound(true);
// ConfigurationクラスをXlsMapperに渡す。
XlsMapper xlsMapper = new XlsMapper();
xlsMapper.setConfiguration(config);
// 設定を変更したXlsMapperでシートの読み込み
SheetObject sheet = xlsMapper.load(
new FileInputStream("example.xls"), SheetObject.class);
|
Configurationは、XlsMapperクラスのインスタンスを作成時にも持っているため、次のような変更もできます。
1 2 3 4 5 6 7 8 | XlsMapper xlsMapper = new XlsMapper();
// XlsMapperクラスから直接XlsMapperConfigのインスタンスを取得し変更する。
xlsMapper.getConfiguration().setIgnoreSheetNotFound(true);
// 設定を変更したXlsMapperでシートの読み込み
SheetObject sheet = xlsMapper.load(
new FileInputStream("example.xls"), SheetObject.class);
|
Configurationでは以下の設定を行うことができます。
プロパティ名 |
クラス型 |
説明 |
---|---|---|
|
|
シートが見つからなくても無視するかどうか。
初期値は'false'です
|
|
|
ラベルを正規化(空白、改行、タブを除去)して、マッピングするかどうか
初期値は'false'です。
Ver.1.1以上 から利用可能です。
|
|
|
マッピングするラベルに
/正規表現/ と記述しておくと正規表現でマッピングできるかどうか。初期値は'false'です。
Ver.1.1以上 から利用可能です。
|
|
|
型変換エラーが発生しても処理を続けるかどうか。
初期値は'false'です。
Ver1.1以前 は、
skipTypeBindFailure という名称です。 |
|
|
|
|
|
書き込み時に名前の定義範囲を修正するかどうか。
アノテーション @XlsHorizontalRecords 、@XlsVerticalRecords でレコードの追加を行った箇所に名前の定義があるときに考慮します。
初期値は'false'です。
Ver.0.3以上 から利用可能です。
|
|
|
書き込み時に名前のセルの入力規則を修正するかどうか。
アノテーション @XlsHorizontalRecords 、@XlsVerticalRecords でレコードの追加を行った箇所に入力規則が設定されているときに考慮します。
初期値は'false'です。
Ver.0.3以上 から利用可能です。
|
|
|
書き込み時に式の再計算をするか設定します。
数式を含むシートを出力したファイルを開いた場合、一般的には数式が開いたときに再計算されます。
ただし、大量で複雑な数式が記述されていると、パフォーマンスが落ちるため 'false' 設定すると無効にすることもできます。
初期値は'true'です。
Ver.1.5以上 から利用可能です。
|
|
|
読み込み時にセルの値をキャッシュして処理速度の向上を行うかどうか。書き込み時に名前のセルの入力規則を修正するかどうか。
初期値は'true'です。
Ver.2.0以上 から利用可能です。
|
|
|
POIのセルの値をフォーマットして文字列として取得するクラスです。
実装は、Ver.0.4から Excel-CellFormatter を利用しています。
|
|
|
フィールドプロセッサーを管理します。
|
|
|
セルの値をJavaオブジェクトに変換するクラスを管理します。
|
|
|
読み込み時などのJavaBeansオブジェクトのインスタンスを作成すためのコールバック用クラス。
独自の実装を渡すことで、SpringFrameworkなどのDIコンテナで管理しているクラスを使用することができます。
|
|
|
マッピング時のエラー情報
SheetBindingErrors のインスタンスを作成すためのコールバック用クラス。独自の実装を渡すことで、SpringFrameworkなどのDIコンテナで管理しているクラスを使用することができます。
Ver.2.0以上 から利用可能です。
|
|
|
アノテーション @XlsSheet に基づき処理対象のシートを抽出するクラス。
Ver.1.1以上 から利用可能です。
|
|
|
アノテーション @XlsFormula の属性
value で指定した数式を独自の変数やEL式をフォーマットする際に利用します。Ver.1.5以上 から利用可能です。
|
|
|
|
|
|
セルのコメント情報をマッピングするデフォルトの処理を設定します。
詳細は、シート上のコメントの取得 や @XlsCommentOption を参照してください。
Ver.2.1以上 から利用可能です。
|