ApachePOI、Javaコードを経由して、Excelのレポートを生成

ApachePOIはじめに

要求の説明

エンタープライズアプリケーション開発では、Excelレポートは、最も一般的なレポートのニーズの一つです。Excelレポートの開発は、一般的に二つの形式に分けられます。

Excelベースのレポートの1、操作を容易にするために、一括アップロード

Javaコードによって生成された2、Excelのレポート。

エクセル共通運用ツール

JXLとPOI:のぞくを動作させるために使用されるJavaの一般的な方法は、一般的に2つの種類があります。

  • JXL Excelが唯一の古い枠組みに属して動作することができ、それが唯一のExcel 95から2000までのバージョンをサポートしています。今、私たちは、更新やメンテナンスを停止しました。

  • POIは、Apacheプロジェクトで、Microsoft WordのExcelのように、PPTがOffice2003などと2007年、Excl2003と2007年を含め、動作します。ポイは今それが更新されました。だから今主流の使用POI。

POIとは何ですか

ApacheのPOIは、無​​料のオープンソースのJava APIにより調製Apache Software Foundationのオープンソース・プロジェクト、クロスプラットフォームのJavaでは、Apache POIのAPIは、Microsoft OfficeのJava言語の操作に機能を提供します。

その上のデータのレポート生成、データの一括アップロード、データのバックアップと:ApacheのPOIは簡単なように完了することができPOIで、Microsoft Officeのの中で最も人気のあるオペレーティングAPIコンポーネントです。

 

 ApachePOI取得ケース

ステップ

  1. プロジェクトpoi_demoを作成します。

  2. 依存追加

  3. テストクラスを記述し、Excelエクスポートを実現する、インポートエクセル

 

1.プロジェクトpoi_demoを作成します。

 

 

2.依存性を追加します。

<?XMLバージョン= "1.0"エンコード= "UTF-8" ?> 

< プロジェクトのxmlns = "http://maven.apache.org/POM/4.0.0" のxmlns:XSI = "http://www.w3.org / 2001 / XMLスキーマ・インスタンス」のxsi:のschemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" >   
  < modelVersion > 4.0.0 </ modelVersion >   
  < のgroupId > com.yk </ のgroupId >   
  < たartifactId > poi_demo </ たartifactId >   
  <バージョン> 
  < パッケージ>戦争</ 梱包> 
  < 依存性> 
    < 依存> 
      < groupIdを> org.apache.poi </ groupIdを> 
      < たartifactId > POI </ たartifactId > 
      < バージョン> 4.0.1 </ バージョン> 
    </ 依存関係> 
    < 依存> 
      < groupIdを> org.apache.poi </ のgroupId > 
      <たartifactId > POI-OOXML </ たartifactId > 
      < バージョン> 4.0.1 </ バージョン> 
    </ 依存> 
    < 依存性> 
      < のgroupId > org.apache.poi </ のgroupId > 
      < たartifactId > POI-OOXML-スキーマ</ たartifactId > 
      < バージョン> 4.0.1 </ バージョン> 
    </ 依存関係> 
    < 依存> 
      <groupId >JUnitの</ groupIdを> 
      < たartifactId > JUnitの</ たartifactId > 
      < バージョン> 4.12 </ バージョン> 
    </ 依存関係> 
  </ 依存関係> 
</ プロジェクト>

3.インポートエクセル、輸出Excelを達成するため、テストクラスを書きます

パッケージcom.yk.test。

輸入org.apache.poi.ss.usermodel.Cell;
輸入org.apache.poi.ss.usermodel.Row。
輸入org.apache.poi.ss.usermodel.Sheet。
輸入org.apache.poi.ss.usermodel.Workbook;
輸入org.apache.poi.xssf.usermodel.XSSFWorkbook;
輸入org.junit.Test;

輸入java.io.FileInputStream;
輸入java.io.FileOutputStreamは、
インポートにjava.io.IOException;

パブリッククラスTestPoi {
@テスト//导出エクセル
ます。public void TestWrite()がスローにIOException {
// 1工作簿
ワークブックWB =新しいXSSFWorkbook();
// 2工作单
シートシート= wb.createSheet( "货物清单")。
// 3行
行row = sheet.createRow(0)。
// 4.
セルCELL row.createCell =(0);
cell.setCellValue( "メーカー")
;セル2 row.createCell =(1)細胞
cell2.setCellValue( "NO")、
細胞が細胞3 row.createCell = (2);
cell3.setCellValue( "番号");
wb.write(新新たFileOutputStream( "D:/test.xlsx"));
}

@ //テストExcelの読み取り
にIOException {スロー)(公共ボイドTestReadを
// 1。 。ブック
ブックWB =新しい新しいXSSFWorkbook(新しい新規のFileInputStream( "D:/test.xlsx"));
// 2ワークシート
シートシート= wb.getSheet( "商品のリスト");
// 3行の
行の行= sheet.getRow(0);
... // 4カラム
System.out.println(row.getCell(0).getStringCellValue())。
System.out.println(row.getCell(1).getStringCellValue())。
System.out.println(row.getCell(2).getStringCellValue())。

}
}

  

 

おすすめ

転載: www.cnblogs.com/DispatcherServlet/p/11543108.html