电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

SpringBoot集成EasyExcel的步驟

瀏覽:140日期:2022-06-15 16:44:20
目錄一 、EasyExcel簡介二、常用注解三、依賴四、監聽五、接口導入Excel六、接口 導出Excel (HttpServletResponse response, HttpServletRequest request)七、本地導入、本地導出一 、EasyExcel簡介

EasyExcel優勢

   注解式自定義操作。    輸入輸出簡單,提供輸入輸出過程的接口    支持一定程度的單元格合并等靈活化操作 二、常用注解 @ExcelProperty 指定當前字段對應excel中的那一列??梢愿鶕只蛘逫ndex去匹配。當然也可以不寫,默認第一個字段就是index=0,以此類推。千萬注意,要么全部不寫,要么全部用index,要么全部用名字去匹配。千萬別三個混著用,除非你非常了解源代碼中三個混著用怎么去排序的。 @ExcelIgnore 默認所有字段都會和excel去匹配,加了這個注解會忽略該字段 @DateTimeFormat 日期轉換,用String去接收excel日期格式的數據會調用這個注解。里面的value參照java.text.SimpleDateFormat @NumberFormat 數字轉換,用String去接收excel數字格式的數據會調用這個注解。里面的value參照java.text.DecimalFormat @ExcelIgnoreUnannotated默認不加ExcelProperty 的注解的都會參與讀寫,加了不會參與 三、依賴

<!-- easyexcel 主要依賴 這一個基本上就夠了--><dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.1.4</version></dependency> <!-- servlet-api --><dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope></dependency><dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version></dependency>四、監聽

/** * EasyExcel 導入監聽 */public class ExcelListener extends AnalysisEventListener { //可以通過實例獲取該值 private List<Object> datas = new ArrayList<Object>(); @Override public void invoke(Object o, AnalysisContext analysisContext) {datas.add(o);//數據存儲到list,供批量處理,或后續自己業務邏輯處理。doSomething(o);//根據自己業務做處理 } private void doSomething(Object object) {//1、入庫調用接口 } public List<Object> getDatas() {return datas; } public void setDatas(List<Object> datas) {this.datas = datas; } @Override public void doAfterAllAnalysed(AnalysisContext analysisContext) {// datas.clear();//解析結束銷毀不用的資源 }}五、接口導入Excel

try { //獲取文件名 String filename = file.getOriginalFilename(); //獲取文件流 InputStream inputStream = file.getInputStream(); //實例化實現了AnalysisEventListener接口的類 ExcelListener listener = new ExcelListener(); //傳入參數 ExcelReader excelReader = new ExcelReader(inputStream, ExcelTypeEnum.XLS, null, listener); //讀取信息 excelReader.read(new Sheet(1, 0, Test.class)); //獲取數據 List<Object> list = listener.getDatas(); if (list.size() > 1) {for (int i = 0; i < list.size(); i++) { Testobj = (Test) list.get(i); JSONObject jo = new JSONObject();} }} catch (Exception e) { System.out.println(e.getMessage());}六、接口 導出Excel (HttpServletResponse response, HttpServletRequest request)

try { String filenames = '111111'; String userAgent = request.getHeader('User-Agent'); if (userAgent.contains('MSIE') || userAgent.contains('Trident')) {filenames = URLEncoder.encode(filenames, 'UTF-8'); } else {filenames = new String(filenames.getBytes('UTF-8'), 'ISO-8859-1'); } response.setContentType('application/vnd.ms-exce'); response.setCharacterEncoding('utf-8'); response.addHeader('Content-Disposition', 'filename=' + filenames + '.xlsx'); EasyExcel.write(response.getOutputStream(), Test.class).sheet('sheet').doWrite(testList);} catch (Exception e) {}七、本地導入、本地導出

List<Test> testList = new ArrayList<>();try { String strUrl = 'C:UsersAdministratorDesktopjson.xlsx'; File multipartFile = new File(strUrl); InputStream inputStream = new FileInputStream(multipartFile); //實例化實現了AnalysisEventListener接口的類 ExcelListener listener = new ExcelListener(); //傳入參數 ExcelReader excelReader = new ExcelReader(inputStream, ExcelTypeEnum.XLS, null, listener); //讀取信息 excelReader.read(new Sheet(1, 0, Test.class)); //獲取數據 List<Object> list = listener.getDatas(); if (list.size() > 1) {for (int i = 0; i < list.size(); i++) { Testobj = (Test) list.get(i);} }} catch (Exception e) { System.out.println(e.getMessage());}try { String strUrl = 'C:UsersAdministratorDesktopjson'+System.currentTimeMillis()+'.xlsx'; EasyExcel.write(strUrl,Test.class).sheet('sheet').doWrite(testList);} catch (Exception e) {}

  以上就是EasyExcel的基礎使用過程,歡迎點贊關注交流。

以上就是SpringBoot集成EasyExcel的步驟的詳細內容,更多關于SpringBoot集成EasyExcel的資料請關注好吧啦網其它相關文章!

標簽: excel
相關文章:
主站蜘蛛池模板: 转子泵_凸轮泵_凸轮转子泵厂家-青岛罗德通用机械设备有限公司 | 避光流动池-带盖荧光比色皿-生化流动比色皿-宜兴市晶科光学仪器 东莞爱加真空科技有限公司-进口真空镀膜机|真空镀膜设备|Polycold维修厂家 | 防爆暖风机_防爆电暖器_防爆电暖风机_防爆电热油汀_南阳市中通智能科技集团有限公司 | 不锈钢水箱厂家,不锈钢保温水箱-山东桑特供水设备 | 立式_复合式_壁挂式智能化电伴热洗眼器-上海达傲洗眼器生产厂家 理化生实验室设备,吊装实验室设备,顶装实验室设备,实验室成套设备厂家,校园功能室设备,智慧书法教室方案 - 东莞市惠森教学设备有限公司 | 【灵硕展览集团】展台展会设计_展览会展台搭建_展览展示设计一站式服务公司 | 掺铥光纤放大器-C/L波段光纤放大器-小信号光纤放大器-合肥脉锐光电技术有限公司 | 细砂提取机,隔膜板框泥浆污泥压滤机,螺旋洗砂机设备,轮式洗砂机械,机制砂,圆锥颚式反击式破碎机,振动筛,滚筒筛,喂料机- 上海重睿环保设备有限公司 | 色油机-色母机-失重|称重式混料机-称重机-米重机-拌料机-[东莞同锐机械]精密计量科技制造商 | 手板-手板模型-手板厂-手板加工-生产厂家,[东莞创域模型] | 匀胶机旋涂仪-声扫显微镜-工业水浸超声-安赛斯(北京)科技有限公司 | 小型玉石雕刻机_家用玉雕机_小型万能雕刻机_凡刻雕刻机官网 | 阴离子_阳离子聚丙烯酰胺厂家_聚合氯化铝价格_水处理絮凝剂_巩义市江源净水材料有限公司 | 首页-瓜尔胶系列-化工单体系列-油田压裂助剂-瓜尔胶厂家-山东广浦生物科技有限公司 | LED投光灯-工矿灯-led路灯头-工业灯具 - 山东普瑞斯照明科技有限公司 | 挤出熔体泵_高温熔体泵_熔体出料泵_郑州海科熔体泵有限公司 | 二维运动混料机,加热型混料机,干粉混料机-南京腾阳干燥设备厂 | 北京翻译公司-专业合同翻译-医学标书翻译收费标准-慕迪灵 | 京马网,京马建站,网站定制,营销型网站建设,东莞建站,东莞网站建设-首页-京马网 | 农业四情_农业气象站_田间小型气象站_智慧农业气象站-山东风途物联网 | 提升海外网站流量,增加国外网站访客UV,定制海外IP-访客王 | 宝宝药浴-产后药浴-药浴加盟-艾裕-专注母婴调养泡浴 | 流程管理|流程管理软件|企业流程管理|微宏科技-AlphaFlow_流程管理系统软件服务商 | 闸阀_截止阀_止回阀「生产厂家」-上海卡比阀门有限公司 | 耐腐蚀泵,耐腐蚀真空泵,玻璃钢真空泵-淄博华舜耐腐蚀真空泵有限公司 | 首页|成都尚玖保洁_家政保洁_开荒保洁_成都保洁| 镀锌钢格栅_热镀锌格栅板_钢格栅板_热镀锌钢格板-安平县昊泽丝网制品有限公司 | 运动木地板厂家,篮球场木地板品牌,体育场馆木地板安装 - 欧氏运动地板 | 新型锤式破碎机_新型圆锥式_新型颚式破碎机_反击式打沙机_锤式制砂机_青州建源机械 | 拉力机-万能试验机-材料拉伸试验机-电子拉力机-拉力试验机厂家-冲击试验机-苏州皖仪实验仪器有限公司 | 济南品牌包装设计公司_济南VI标志设计公司_山东锐尚文化传播 | 铝镁锰板厂家_进口钛锌板_铝镁锰波浪板_铝镁锰墙面板_铝镁锰屋面-杭州军晟金属建筑材料 | 纸箱网 -纸箱机械|设备|包装纸盒|包装印刷行业门户网站 | 武汉不干胶印刷_标签设计印刷_不干胶标签印刷厂 - 武汉不干胶标签印刷厂家 | 恒温振荡混匀器-微孔板振荡器厂家-多管涡旋混匀器厂家-合肥艾本森(www.17world.net) | 电动球阀_不锈钢电动球阀_电动三通球阀_电动调节球阀_上海湖泉阀门有限公司 | 双舌接地线-PC68数字式高阻计-ZC36|苏海百科 | BESWICK球阀,BESWICK接头,BURKERT膜片阀,美国SEL继电器-东莞市广联自动化科技有限公司 | 2025第九届世界无人机大会 | 上海办公室设计_办公楼,写字楼装修_办公室装修公司-匠御设计 | KBX-220倾斜开关|KBW-220P/L跑偏开关|拉绳开关|DHJY-I隔爆打滑开关|溜槽堵塞开关|欠速开关|声光报警器-山东卓信有限公司 |