EasyExcelによるExcelセルスタイルの高度なカスタマイズ
EasyExcelライブラリを使用すると、Excelファイルのヘッダーとコンテンツの両方に対して、きめ細やかなセルスタイル設定が可能です。ここでは、アノテーションベースのアプローチと、プログラムによる柔軟なスタイル定義戦略について解説します。
アノテーションを用いたスタイル設定
EasyExcelでは、クラスやフィールドに特定のJavアノテーションを付与することで、セル ...
9月30日 08:48 投稿
Excelエクスポートにおける一時ファイル削除エラーの解決
問題現象と初期調査
システムが一定期間稼働後、Excelエクスポート機能で以下のエラーが発生しました:
nested exception is java.lang.IllegalStateException: java.nio.file.NoSuchFileException: /tmp/b35f0633-5463-464c-a3ee-c927b2ec275e/poifiles/poi-sxssf-sheet3680958631078595506.xml] with root cause
java.nio.file.NoSuchFileException: /tmp/b35f0633-46 ...
9月29日 09:00 投稿
EasyExcelを利用した汎用インポートユーティリティクラスの実装
EasyExcelによるファイル読み込み
EasyExcelは、com.alibaba.excel.event.AnalysisEventListenerクラスを継承し、その中のinvokeメソッドをコールバックすることで、Excelファイルの各行のデータを取得します。ファイルの各行が読み込まれるたびに、invokeメソッドが呼び出されます。
ユーティリティクラスの作成
以下は、汎用的なExcel読み込みリスナークラスの実装例で ...
7月18日 01:31 投稿
Java EasyExcelを活用した複雑なExcel帳票作成
複雑なExcel出力の課題とEasyExcelによる解決
最近のプロジェクトでは、ウェブページに表示される請求書データをExcelファイルとして出力する要件がありました。当初、HTMLコンテンツをBlob形式で取得し、それを.xlsファイルとしてクライアントサイドで生成する方法を検討しました。この方法は、.xlsファイルがHTMLテキストを解釈する特性を利用したもので、本質的にはHTML ...
7月9日 16:55 投稿
EasyExcelを用いた効率的なデータインポート実装
本記事では、EasyExcelライブラリを活用したデータインポート機能の実装方法を解説します。特に1000行ごとにバッチ処理を行う設計と、抽象化されたリスナークラスに焦点を当てます。
コアコンポーネントの設計
DataImportListener:インポート処理を統括する抽象リスナークラス
RowRecord:各行データを保持するエンティティクラス
BatchProcessor:バッチ処理を定義する ...
6月18日 18:43 投稿
Spring Boot における EasyExcel を用いた大規模データの効率的なインポート・エクスポート
Spring Boot 環境で大規模な Excel データを扱う際、最も懸念されるのはメモリ不足(OOM)によるサーバーダウンです。従来の Apache POI はファイル全体をメモリ上に展開するため、数万行程度のデータでもリスクが生じます。これを回避し、処理速度を最大化するための標準的なアプローチが、阿里巴巴製の EasyExcel の導入です。
EasyExcel は SAX パーサーをベースとして ...
6月1日 10:26 投稿
Spring BootでEasyExcelを使用したテンプレートによる複数シートのExcelエクスポート
概要
本記事では、Spring Boot環境でEasyExcelライブラリを利用してExcelテンプレートを複数のシートにデータを埋め込み、エクスポートする方法について解説します。
実装コード
Excelデータ埋め込み処理
/**
* EasyExcelを利用してExcelファイルにデータを書き込みます
* @param templatePath テンプレートファイルのパス
* @param sheetDataMap シート名とデータ ...
5月17日 11:06 投稿