Apache.POI の HSSFWorkbook を使用して Excel にエクスポートします。具体的な内容は次のとおりです。 1. Poi依存関係を導入する(3.12) 依存関係は次のとおりです。 <依存関係> <グループ ID>org.apache.poi</グループ ID> <artifactId>ポイ</artifactId> <バージョン>3.12</バージョン> </依存関係> 2. エンティティクラス(User.java)を作成する パッケージ com.kd.nm.entity.pojo; /** * エンティティクラス (ユーザー) * *著者 小晨歌歌*/ パブリッククラスUser{ // ユーザー番号 private String userNo; //ユーザー名private String userName; //年齢private String age; // パラメータ構築なし public User() { } // パラメータを持つコンストラクタ public User(String userNo, String userName, String age) { this.userNo = ユーザーNo; this.userName = ユーザー名; this.age = 年齢; } // getメソッドとsetメソッドをカプセル化する public String getUserNo() { ユーザー番号を返します。 } パブリック void setUserNo(String userNo) { this.userNo = ユーザーNo; } パブリック文字列 getUserName() { ユーザー名を返します。 } パブリックvoid setUserName(文字列userName) { this.userName = ユーザー名; } パブリック文字列getAge() { 年齢を返す; } パブリック void setAge(文字列 age) { this.age = 年齢; } //toString メソッドを書き換える @Override パブリック文字列toString() { "User{" を返す + "userNo='" + userNo + '\'' + ", ユーザー名='" + ユーザー名 + '\'' + "、年齢='" + 年齢 + '\'' + '}'; } } 3.Excel関連ツールクラス(ExcelUtil、ReflectUtil) パッケージ com.kd.nm.util; java.util.ArrayList をインポートします。 java.util.List をインポートします。 java.util.Map をインポートします。 org.apache.poi.hssf.usermodel.* をインポートします。 /** * 説明: Excel 関連ツール* * @著者: シャオチェン兄弟* */ パブリッククラス ExcelUtil { /** * Excel テーブルを生成* @param heads ヘッダー コンテンツ* @param data データ コンテンツ* @return */ パブリック静的 HSSFWorkbook createExcel(Map<String, String> ヘッド、リストデータ) { // ワークブックを宣言します HSSFWorkbook workbook = new HSSFWorkbook(); // テーブルを生成します HSSFSheet sheet = workbook.createSheet(); // タイトル行スタイルを生成します HSSFCellStyle headStyle = creatStyle(workbook, (short) 14); // テーブル コンテンツ スタイルを生成します HSSFCellStyle bodyStyle = creatStyle(workbook, (short) 10); // タイトル要素 List<String> keys = new ArrayList<String>(heads.keySet()); // ピクセル単位 short px = 1000; // 列幅を設定する for (int columnIndex = 0; columnIndex < keys.size(); columnIndex++) { sheet.setColumnWidth(列インデックス、6 * px); } // テーブルを生成 for (int rowNum = 0; rowNum <= data.size(); rowNum++) { // 行を作成 HSSFRow row = sheet.createRow(rowNum); (int cellNum = 0; cellNum < keys.size(); cellNum++) の場合 { // 列を作成します HSSFCell cell = row.createCell(cellNum); // タイトル if (rowNum == 0) { セルスタイルを設定します。 cell.setCellValue(heads.get(keys.get(cellNum))); } else { // コンテンツ cell.setCellStyle(bodyStyle); // reflection.setCellValue(ReflectUtil.getValue(keys.get(cellNum), data.get(rowNum - 1))); を通じてセルを取得します。 } } } ワークブックを返します。 } /** * スタイルを生成 * @param workbook * @param サイズ * @戻る */ パブリック静的 HSSFCellStyle creatStyle(HSSFWorkbook ワークブック、ショートサイズ) { HSSFCellStyle スタイル = workbook.createCellStyle(); style.setAlignment((HSSFCellStyle.ALIGN_CENTER)); style.setVerticalAlignment((HSSFCellStyle.VERTICAL_CENTER)); HSSFFont フォント = workbook.createFont(); font.setFontHeightInPoints(サイズ); font.setFontName("Microsoft YaHei"); style.setFont(フォント); style.setBorderBottom(HSSFCellStyle.BORDER_THIN); style.setBorderTop(HSSFCellStyle.BORDER_THIN); style.setBorderRight(HSSFCellStyle.BORDER_THIN); style.setBorderLeft(HSSFCellStyle.BORDER_THIN); 戻りスタイル; } } パッケージ com.kd.nm.util; org.slf4j.Logger をインポートします。 org.slf4j.LoggerFactory をインポートします。 org.springframework.util.ReflectionUtils をインポートします。 java.beans.PropertyDescriptor をインポートします。 java.lang.reflect.Method をインポートします。 /** * リフレクションツールキット* * @著者: 小晨兄弟*/ パブリッククラスReflectUtil { プライベート静的最終 Logger ロガー = LoggerFactory.getLogger(ReflectUtil.class); パブリック静的文字列 getValue(文字列キー、オブジェクト obj) { 文字列値 = ""; 試す { // 現在のプロパティを取得します。PropertyDescriptor pd = new PropertyDescriptor(key, obj.getClass()); // get メソッドを取得します。Method getMd = pd.getReadMethod(); 値 = getMd.invoke(obj).toString(); } キャッチ (例外 e) { logger.error("コンテンツの取得に失敗しました!"); e.printStackTrace(); } 戻り値; } パブリック静的void setValue(文字列キー、文字列値、オブジェクトobj) { 試す { // 現在のプロパティを取得します。PropertyDescriptor pd = new PropertyDescriptor(key, obj.getClass()); // 設定されたメソッドを取得します。Method writeMd = pd.getWriteMethod(); 書き込みMd.invoke(obj, 値); } キャッチ (例外 e) { logger.error("コンテンツの設定に失敗しました!"); e.printStackTrace(); } } } 4. バックエンドコントローラコード @RequestMapping(値 = "/exportExcel",メソッド = RequestMethod.GET,生成 = "application/json") パブリック void exportExcel(HttpServletResponse httpServletResponse) は IOException をスローします { // ヘッダーコンテンツ(フロントエンドで設定し、パラメータで渡すことができます)キーはエンティティクラスの属性値、値はヘッダーのラベルです Map<String,String> ヘッド = new HashMap<>(); head.put("userNo","ユーザー番号。"); head.put("userName","ユーザー名"); head.put("年齢","年齢"); // テーブル データ コンテンツ。データベースからクエリされたデータをシミュレートします。List<User> data = new ArrayList<>(); data.add(new User("1","Little Chenの弟","18")); data.add(新しいユーザー("2","リトル・ピギー・シスター","18")); data.add(新しいユーザー("3","ビッグピッグブラザー","18")); // ワークブックを生成 HSSFWorkbook hssfWorkbook = ExcelUtil.createExcel(head, data); // ファイル名を定義します String fileName = "Excel テーブルのエクスポート"; httpServletResponse.setHeader("Cache-Control", "max-age=0"); httpServletResponse.setContentType("application/vnd.ms-excel"); httpServletResponse.addHeader("Content-disposition", "attachment;filename=" + new String(fileName.getBytes("gb2312"), "ISO-8859-1") + ".xls"); 出力ストリーム outputStream = httpServletResponse.getOutputStream(); hssfWorkbook.write(出力ストリーム); 出力ストリームをフラッシュします。 出力ストリームを閉じます。 } 5. マッピングされたアドレスにアクセスする インターフェースアクセス: http://localhost:9090/FaultTreatment/api/standard/exportExcel Apache.POI を使用して Java で HSSFWorkbook を Excel にエクスポートする実装方法については、これで終わりです。Apache.POI で HSSFWorkbook を Excel にエクスポートする方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
docker-compose.yml ファイルで './' 相対パスを許可する バー...
Vue3.0 がリリースされてからしばらく経ちましたが、勉強を始める必要があります。まず、達成したい...
序文MySQL は、強力なクエリ機能、高いデータ一貫性、高いデータ セキュリティ、およびセカンダリ ...
目次序文: 1. ロック待機とデッドロックを理解する2. 現象の再発と治療要約:序文: MySQL ...
この記事では、フロア効果を実現するためのJavaScriptの具体的なコードを参考までに紹介します。...
なぜこのような記事を書いたかというと、数日前の夜、仕事が終わろうとしていたときに、業務側で突然、テー...
monaco-editor-vueの公式ソースコードは次のとおりです。インデックス 'mon...
この記事の例では、WeChatアプレットの水平スクロールと垂直スクロールを実現するための具体的なコー...
データの応答性について話す前に、Vue はデータに対して具体的に何を行うのかという非常に重要な問題を...
1. 仮想環境virtualenvのインストール1. virtualenvをインストールするpip3...
目次序文1. Ingressの展開と構成2. httpsを使用する序文k8sクラスタサービスがデプロ...
最近、Vue プロジェクトについて知り、ElementUI でデータを xlsx および Excel...
Linux には、2 種類のファイル接続があります。1 つは Windows のショートカットに似て...
導入:最近の面接の質問を見ると、ドロップダウン メニューを実装するために CSS を使用することが多...
参考までにWindowsにMySQLをインストールします。具体的な内容は次のとおりです。 1.まずM...