<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
首先前期根據需求需要搭建springboot+前端的框架,這個根據個人專案來,我是用的springboot+layui。這些不是這裡討論的重點。
<!-- 基本依賴包 --> <dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.3.8</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>4.0.0</version> </dependency>
必須推薦一波:
(一)前端按鈕
前端程式碼不是核心,只是為了一個思路
//①按鈕 <button id="importData" class="layui-btn">匯入</button> //②//匯入 用layui upload外掛 layui.use([ "element", "laypage", "layer", "upload"], function() { debugger; var element = layui.element; var laypage = layui.laypage; var layer = layui.layer; var upload = layui.upload;//主要是這個 layui.upload.render({ elem: "#importData",//匯入id url: "/emp/importData", size: '3072', accept: "file", exts: 'xls|xlsx|xlsm|xlt|xltx|xltm', done: function (result) { if (result.status == 0) { parent.layui.table.reload('LAY-app-emp-list'); } if (result.message != null) { parent.layui.table.reload('LAY-app-emp-list'); layer.msg(result.message) } } }); // refreshTable() });
(二)後端程式碼
controller介面
@PostMapping(value = "/importData") @ResponseBody public CommonResult importData(@RequestParam MultipartFile file) { //呼叫service方法,這個地方通過MultipartFile引數就可以接收到上傳的Excel檔案內容了 empService.importTemplate(file); return CommonResult.success("上傳成功"); }
service實現類程式碼
說明:這裡我們接收到file之後,通過hutool工具中的ExcelUtil工具幫我們解析檔案,等到一行一行的資料,這個時候我們只需要對映到我們的實體類中。這裡我只是寫了一個EmpDO中的兩個欄位,如果業務複雜參考這兩個欄位來就行了。
@Override public void importTemplate(MultipartFile file) { InputStream inputStream = null; try { inputStream = file.getInputStream(); }catch (Exception e){ logger.info("檔案異常"); } //指定輸入流和sheet ExcelReader reader = ExcelUtil.getReader(inputStream, 0); // 讀取第二行到最後一行資料 List<List<Object>> read = reader.read(1, reader.getRowCount()); List<EmpDO> empDOS = new ArrayList<>(); for (List<Object> objects : read) { EmpDO empDO = new EmpDO(); //讀取某行第一列資料 Object sampleNo = objects.get(0); //讀取某行第二列資料 Object sampleName = objects.get(1); //員工id empDO.setEmpId(Integer.parseInt(sampleNo.toString())); //員工姓名 empDO.setName(sampleName.toString()); empDOS.add(empDO); //這裡沒有做資料插入到資料庫的操作,我用的是mybatisplus System.out.println(empDO); } }
(一)檔案准備:
(二)選擇匯入檔案
(三)進入到業務處理
到此這篇關於springboot layui hutool Excel匯入的實現的文章就介紹到這了,更多相關springboot layui hutool Excel匯入內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45