中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

青海西寧制作網(wǎng)站企業(yè)/鎮(zhèn)江網(wǎng)站建設(shè)制作公司

青海西寧制作網(wǎng)站企業(yè),鎮(zhèn)江網(wǎng)站建設(shè)制作公司,免費(fèi)網(wǎng)站設(shè)計(jì)培訓(xùn)班,關(guān)于寫策劃的一個(gè)網(wǎng)站簡(jiǎn)介 FastExcel是由原EasyExcel作者在阿里巴巴宣布停止維護(hù)EasyExcel之后推出的升級(jí)版框架。它繼承了EasyExcel的所有優(yōu)點(diǎn),并且在性能和功能上進(jìn)行了顯著的提升和創(chuàng)新。 FastExcel的特點(diǎn) 高性能讀寫:FastExcel專注于性能優(yōu)化,能夠高效處理…

簡(jiǎn)介

FastExcel是由原EasyExcel作者在阿里巴巴宣布停止維護(hù)EasyExcel之后推出的升級(jí)版框架。它繼承了EasyExcel的所有優(yōu)點(diǎn),并且在性能和功能上進(jìn)行了顯著的提升和創(chuàng)新。

FastExcel的特點(diǎn)

  1. 高性能讀寫:FastExcel專注于性能優(yōu)化,能夠高效處理大規(guī)模的Excel數(shù)據(jù),顯著降低內(nèi)存占用。
  2. 簡(jiǎn)單易用:提供了簡(jiǎn)潔直觀的API,使得開發(fā)者可以輕松集成到項(xiàng)目中,無(wú)論是簡(jiǎn)單的Excel操作還是復(fù)雜的數(shù)據(jù)處理都能快速上手。
  3. 流式操作:支持流式讀取,將一次性加載大量數(shù)據(jù)的問(wèn)題降到最低,特別適合處理數(shù)十萬(wàn)甚至上百萬(wàn)行的數(shù)據(jù)。
  4. 完全兼容:完全兼容原EasyExcel的所有功能和特性,用戶可以無(wú)縫過(guò)渡。
  5. 持續(xù)更新:FastExcel會(huì)持續(xù)更新,修復(fù)bug,優(yōu)化性能,增加新功能。

FastExcel使用方法詳解

創(chuàng)建實(shí)體類和監(jiān)聽器
創(chuàng)建實(shí)體類

在使用FastExcel進(jìn)行Excel文件的讀寫操作之前,需要定義一個(gè)實(shí)體類,該類中的每個(gè)屬性對(duì)應(yīng)Excel中的一列。使用@ExcelProperty注解來(lái)指定列名。

/*** @author 作者:TesterRoad* @time 創(chuàng)建時(shí)間:2024* @desc 公眾號(hào):測(cè)試工程師成長(zhǎng)之路*/import cn.idev.excel.annotation.ExcelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;@Setter
@Getter
@ToString
public class User {@ExcelProperty("編號(hào)")private Integer id;@ExcelProperty("名字")private String name;@ExcelProperty("年齡")private Integer age;
}
創(chuàng)建事件監(jiān)聽器

FastExcel通過(guò)事件監(jiān)聽器實(shí)現(xiàn)Excel文件的逐行讀取,這對(duì)于處理大文件尤為重要,因?yàn)樗梢员苊鈨?nèi)存溢出的問(wèn)題。下面是一個(gè)事件監(jiān)聽器的示例,它在讀取每行數(shù)據(jù)時(shí)將數(shù)據(jù)添加到列表中,并在所有數(shù)據(jù)讀取完成后執(zhí)行一些操作。

/*** @author 作者:TesterRoad* @time 創(chuàng)建時(shí)間:2024* @desc 公眾號(hào):測(cè)試工程師成長(zhǎng)之路*/import cn.idev.excel.context.AnalysisContext;
import cn.idev.excel.event.AnalysisEventListener;
import java.util.ArrayList;
import java.util.List;public class BaseExcelListener<T> extends AnalysisEventListener<T> {private List<T> dataList = new ArrayList<>();@Overridepublic void invoke(T t, AnalysisContext analysisContext) {dataList.add(t);}@Overridepublic void doAfterAllAnalysed(AnalysisContext analysisContext) {System.out.println("讀取完成,共讀取了 " + dataList.size() + " 條數(shù)據(jù)");}public List<T> getDataList() {return dataList;}
}
實(shí)現(xiàn)寫入和讀取功能
Excel寫入功能

以下是使用FastExcel進(jìn)行Excel寫入的示例代碼。首先,創(chuàng)建測(cè)試數(shù)據(jù),然后通過(guò)FastExcel.write方法將數(shù)據(jù)寫入到Excel文件中。

/*** @author 作者:TesterRoad* @time 創(chuàng)建時(shí)間:2024* @desc 公眾號(hào):測(cè)試工程師成長(zhǎng)之路*/// Excel寫入功能
@GetMapping("/download")
public void download(HttpServletResponse response) throws IOException {response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");response.setCharacterEncoding("utf-8");String fileName = URLEncoder.encode("test", "UTF-8");response.setHeader("Content-disposition","attachment;filename*=utf-8''" + fileName + ".xlsx");// 寫入數(shù)據(jù)FastExcel.write(response.getOutputStream(), User.class).sheet("模板").doWrite(buildData());
}// 創(chuàng)建測(cè)試數(shù)據(jù)
private List<User> buildData() {User user1 = new User();user1.setId(1);user1.setName("張三");user1.setAge(18);User user2 = new User();user2.setId(2);user2.setName("李四");user2.setAge(19);return List.of(user1, user2);
}
Excel讀取功能

以下是使用FastExcel進(jìn)行Excel讀取的示例代碼。通過(guò)FastExcel.read方法讀取Excel文件,并使用之前創(chuàng)建的監(jiān)聽器來(lái)處理讀取到的數(shù)據(jù)。

/*** @author 作者:TesterRoad* @time 創(chuàng)建時(shí)間:2024* @desc 公眾號(hào):測(cè)試工程師成長(zhǎng)之路*/// Excel讀取功能
@PostMapping("/upload")
public ResponseEntity<String> upload(@RequestParam("file") MultipartFile file) {if (file.isEmpty()) {return ResponseEntity.badRequest().body("請(qǐng)選擇一個(gè)文件上傳!");}try {BaseExcelListener<User> baseExcelListener = new BaseExcelListener<>();FastExcel.read(file.getInputStream(), User.class, baseExcelListener).sheet().doRead();List<User> dataList = baseExcelListener.getDataList();System.out.println(dataList);return ResponseEntity.ok("文件上傳并處理成功!");} catch (IOException e) {return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body("文件處理失敗!");}
}
Excel轉(zhuǎn)換為PDF

FastExcel還支持將Excel文件轉(zhuǎn)換為PDF文件,這一功能底層依賴于Apache POI和itext-pdf。請(qǐng)注意,使用itext-pdf時(shí)需要確保符合其許可證要求。

FastExcel.convertToPdf(new File("excelFile"),new File("pdfFile"),null,null);
小結(jié)

FastExcel作為一個(gè)高效且易于使用的Excel處理工具,不僅繼承了EasyExcel的所有優(yōu)點(diǎn),還在此基礎(chǔ)上進(jìn)行了性能和功能的增強(qiáng)。通過(guò)上述示例,我們可以看到FastExcel如何簡(jiǎn)化Excel文件的讀寫操作,以及如何通過(guò)事件監(jiān)聽器實(shí)現(xiàn)流式處理,從而有效管理內(nèi)存使用。無(wú)論是企業(yè)數(shù)據(jù)導(dǎo)入導(dǎo)出還是個(gè)人項(xiàng)目開發(fā),FastExcel都能提供強(qiáng)大的支持。

FastExcel與EasyExcel的區(qū)別

  1. 性能提升:FastExcel在性能上比EasyExcel更好,更穩(wěn)定。
  2. API一致性:FastExcel與EasyExcel的API完全一致,可以無(wú)縫切換。
  3. 功能增加:FastExcel 1.0.0版本新增了讀取Excel指定行數(shù)和將Excel轉(zhuǎn)換為PDF的功能。

結(jié)論

FastExcel作為一個(gè)輕量級(jí)但功能強(qiáng)大的Java庫(kù),專為需要高性能和低內(nèi)存占用的Excel文件處理而設(shè)計(jì)。如果您的項(xiàng)目需要處理大規(guī)模的Excel數(shù)據(jù),FastExcel無(wú)疑是一個(gè)值得考慮的選擇。其流式處理和靈活的API使其成為處理Excel文件的理想工具。

來(lái)源:https://juejin.cn/post/7451871895753326626

http://www.risenshineclean.com/news/658.html

相關(guān)文章:

  • wordpress獲取主題目錄/百度關(guān)鍵詞優(yōu)化
  • 菏澤網(wǎng)站建設(shè)誰(shuí)最出名/seo推廣編輯
  • wordpress清理緩存/深圳網(wǎng)站優(yōu)化網(wǎng)站
  • 畢業(yè)論文網(wǎng)站建設(shè)前分析/軟文推廣代理
  • 網(wǎng)站建設(shè) 動(dòng)態(tài)添加內(nèi)容/網(wǎng)站怎么弄
  • 網(wǎng)站開發(fā) 旅游/電腦版百度
  • 網(wǎng)站模板建設(shè)教程/百度推廣助手
  • 資源網(wǎng)站排名優(yōu)化seo/谷歌優(yōu)化培訓(xùn)
  • 棗莊做網(wǎng)站的公司/seo技術(shù)306
  • 商會(huì) 網(wǎng)站模板/推廣技巧
  • go和java做網(wǎng)站/域名解析ip地址查詢
  • 山西中交建設(shè)工程招標(biāo)有限公司網(wǎng)站/華聯(lián)股份股票
  • 怎么做傳奇私服廣告網(wǎng)站/百度排名工具
  • 南京網(wǎng)站制作電話/怎么查詢百度收錄情況
  • WordPress文章怎么折疊/長(zhǎng)沙seo關(guān)鍵詞
  • 建設(shè)網(wǎng)站裝配式建筑樓房/百度官網(wǎng)網(wǎng)頁(yè)版
  • 專業(yè)做外貿(mào)網(wǎng)站的公司/企業(yè)網(wǎng)站模板下載
  • 怎么自己給自己的網(wǎng)站做推廣/360推廣平臺(tái)登錄入口
  • 東莞p2p網(wǎng)站開發(fā)價(jià)錢/新聞最近新聞10條
  • 網(wǎng)站設(shè)計(jì)標(biāo)準(zhǔn)字體/競(jìng)猜世界杯
  • 杭州個(gè)人網(wǎng)站建設(shè)/搜索引擎優(yōu)化的方法
  • 深圳建設(shè)公司網(wǎng)站/優(yōu)化推廣網(wǎng)站排名
  • 網(wǎng)站icp備案號(hào)怎么查詢/搜索引擎優(yōu)化實(shí)訓(xùn)報(bào)告
  • 做外匯看的國(guó)外網(wǎng)站/網(wǎng)站關(guān)鍵詞如何優(yōu)化
  • dw網(wǎng)站輪播效果怎么做/制作app平臺(tái)需要多少錢
  • 中等職業(yè)學(xué)校網(wǎng)站建設(shè)模塊/加快實(shí)施創(chuàng)新驅(qū)動(dòng)發(fā)展戰(zhàn)略
  • 北京最大網(wǎng)站建設(shè)公司排名/網(wǎng)絡(luò)銷售怎么聊客戶
  • 廣東手機(jī)網(wǎng)站建設(shè)哪家好/技能培訓(xùn)學(xué)校
  • 銷售平臺(tái)網(wǎng)站建設(shè)方案模板/百度愛采購(gòu)?fù)茝V效果怎么樣?
  • 網(wǎng)站前端開發(fā)框架/朋友圈產(chǎn)品推廣文案