MyExcel 2.7.0リリース、容量設定&アクティブなメモリ最適化&圧縮

MyExcelは、インポート、エクスポート、暗号化、Excel、およびJavaツールキットの他の多くの機能のセットです。

次のようにこの更新ポイントは以下のとおりです。

  • 起因SXSSF修復モードで結合されたセルのエラーの問題が生じる予めディスクに書き込まれます。
  • 新しいDefaultExcelBuilder、DefaultStreamExcelBuilderマルチ・レベル・ヘッダー機能;
  • Excelはのサポートタイムスタンプ(タイムスタンプ)を読んで追加します。
  • 新DefaultStreamExcelBuilderエクスポートのサポートのZIP圧縮ファイル(DefaultStreamExcelBuilder.buildAsZip( "XXXX"));
  • 新AttachmentExportUtil一般的なパスのエクスポートをサポート。
  • 最適化ブックDefaultStreamExcelBuilderは、輸出効率を高める提供変換を使用してパスプロセス、非同期スレッドプールに変換され、
  • メモリ・ウィンドウを保存するラインの最適化SXSSFのデフォルト数は1です。
  • 最適ワークブックのデフォルトのタイプはSXSSFは、実際の生産とメモリフットプリントの削減です。
  • DefaultStreamExcelBuilder最適化モデル、急速な成長によって引き起こされる問題減らすためにメモリ内の1回限りの追加データ(30または40メガバイトのメモリーの外側の第1の時間()の輸出の高いシェアに加えて、JProfilerをテストを使用して、百万データを、百程度の安定稼働メモリ) ;
  • エクスポートエクセル最適化モデルの境界の定義は、エラーコードの可能性を減らします。

1.サポートマルチレベルのタイトル

@ExcelColumn(order = 3, index = 3, width = 20,title = "扩展信息->绘画等级")
private String paintingLevel;

タイトル記号「 - >」マルチレベルの見出し、titleSeparator @ExcelTableのプロパティで使用するカスタム区切り文字を分離します。

結果は以下の通りであります:

2.エクセル複数ファイルの輸出能力が設定&

DefaultStreamExcelBuilder defaultExcelBuilder = DefaultStreamExcelBuilder.of(ArtCrowd.class)
                .autoWidthStrategy(AutoWidthStrategy.CUSTOM_WIDTH)
                .capacity(10_000)
                .threadPool(Executors.newFixedThreadPool(10))
                .start();

List<CompletableFuture> futures = new ArrayList<>();
for (int i = 0; i < 100; i++) {
     CompletableFuture future = CompletableFuture.runAsync(() -> {
           List<ArtCrowd> dataList = this.getDataList();
           defaultExcelBuilder.append(dataList);
      });
      futures.add(future);
}
futures.forEach(CompletableFuture::join);
List<Path> paths = defaultExcelBuilder.buildAsPaths();

容量(10_000)容量設定については、最後のbuildAsPathsエクスポートファイルのリストを使用し、Excelが指定された容量よりも、それは自動的に新しいブックを作成し、Excelなどのラインの最大数を収容することができ表します。

3.  エクセル&アクティブ圧縮容量が設定されています

DefaultStreamExcelBuilder defaultExcelBuilder = DefaultStreamExcelBuilder.of(ArtCrowd.class)
                .autoWidthStrategy(AutoWidthStrategy.CUSTOM_WIDTH)
                .capacity(10_000)
                .threadPool(Executors.newFixedThreadPool(10))
                .start();

List<CompletableFuture> futures = new ArrayList<>();
for (int i = 0; i < 100; i++) {
        CompletableFuture future = CompletableFuture.runAsync(() -> {
                List<ArtCrowd> dataList = this.getDataList();
        defaultExcelBuilder.append(dataList);
     });
     futures.add(future);
}
futures.forEach(CompletableFuture::join);
Path zip = defaultExcelBuilder.buildAsZip("测试文件");

buildAsZip容量設定と一緒に使用、圧縮を構築する(「テストファイル」)。

具体的な使用、ドキュメントを参照してください。https://github.com/liaochong/myexcel/wikiを

おすすめ

転載: www.oschina.net/news/107856/myexcel-2-7-0-released
おすすめ