程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA綜合教程 >> java 實現Excel壓縮成Zip導出,excelzip

java 實現Excel壓縮成Zip導出,excelzip

編輯:JAVA綜合教程

java 實現Excel壓縮成Zip導出,excelzip


1 概述

在web項目中常見的一種場景就是將文件導出為Excel,但是當需要導出多個Excel時,使用者將頻繁操作,這樣就嚴重降低了項目的友好交互性以及易用性,那麼怎麼才能優雅的解決這個問題呢?筆者今天分享將Excel導出後並壓縮成zip包響應到浏覽器端,希望對大家有所幫助。

2 實現思路

使用AEAI DP創建樣例工程export_demo,創建測試數據表employee,使用DP預置的樣例功能快速創建單表操作模型,擴展添加導出按鈕,擴展創建導出替換的模板EmployeeInfos.ftl,實現導出Excel的FileExportHelper-exportFile以及壓縮的ZipHelper-doZip,dowmZip,deleteZip。

3 實現步驟

3.1 基礎准備

1.創建樣例工程export_demo,並初始化數據庫(具體可參見AEAI DP開發平台技術手冊,下載鏈接http://www.agileai.com/portal/website/01/res-share.ptml);

2.創建業務數據表,初始化sql;

3.創建單表操作模型快速生成代碼,(參見 AEAIDP開發平台技術手冊),在此不做過多贅述;

3.2 功能擴展

1.擴展“導出Excel”按鈕;

在EmployeeManageList.jsp中添加按鈕,並擴展js方法指向Handler

2.創建導出替換數據模板(模板是基於Freemaker語法進行變量替換);

3.3 數據拼接

1.構造導出數據拼接,調用FileExportHelper-exportFile實現導出Excel
1)在EmployeeManageListHandler中擴展方法exportExcelFile拼接導出Excle用到的數據

2)調用FileExportHelper-exportFile實現利用IO流將Excel導出至固定目錄

2.調用ZipHelper-doZip將文件壓縮為zip包,dowmZip將zip包響應到浏覽器端,deleteZip將已生成的zip包刪除節約服務器空間。
1)doZip將文件壓縮為zip包

2)dowmZip將zip包響應到浏覽器端

3)deleteZip將已生成的zip包刪除節約服務器空間

3.4 演示效果

浏覽器輸入http://localhost:6060/export_demo/index?Homepage

輸入用戶名密碼登錄(賬號admin,密碼admin)

訪問職工管理點擊“導出Excel”

點擊導出Excel將職工信息導出Zip包效果如下

打開壓縮包可以查看導出的Excel

點擊查看Excel

4 環境搭建

1.到數通暢聯官網(http://www.agileai.com)資源分享中下載AEAI DP以及HotServer 下載對應的介質

2.使用Navicat創建數據庫export,執行sql腳本export_mysql.sql

3.啟動HotServer,將工程導入AEAI DP並部署於HotServer

4.浏覽器訪問http://localhost:6060/export_demo/index?Homepage登錄後即可查看效果

5 附件及說明

附件為樣例export_demo的源碼,其中數據庫腳本位於項目中sql文件夾下export_mysql.sql

文檔及附件 下載

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved