最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

springboot layui hutool Excel導(dǎo)入的實現(xiàn)

 更新時間:2022年03月31日 16:00:32   作者:厚積博發(fā)  
本文主要介紹了springboot layui hutool Excel導(dǎo)入的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

一、導(dǎo)入依賴

(一)其他環(huán)境準備

首先前期根據(jù)需求需要搭建springboot+前端的框架,這個根據(jù)個人項目來,我是用的springboot+layui。這些不是這里討論的重點。

(二)hutool和Excel導(dǎo)入

<!-- 基本依賴包 -->
<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">導(dǎo)入</button>
//②//導(dǎo)入 用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",//導(dǎo)入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) {
    //調(diào)用service方法,這個地方通過MultipartFile參數(shù)就可以接收到上傳的Excel文件內(nèi)容了
    empService.importTemplate(file);
    return CommonResult.success("上傳成功");
}

service實現(xiàn)類代碼

說明:這里我們接收到file之后,通過hutool工具中的ExcelUtil工具幫我們解析文件,等到一行一行的數(shù)據(jù),這個時候我們只需要映射到我們的實體類中。這里我只是寫了一個EmpDO中的兩個字段,如果業(yè)務(wù)復(fù)雜參考這兩個字段來就行了。

@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); 
    // 讀取第二行到最后一行數(shù)據(jù)
    List<List<Object>> read = reader.read(1, reader.getRowCount());
    List<EmpDO> empDOS = new ArrayList<>();
    for (List<Object> objects : read) {
        EmpDO empDO = new EmpDO();
        //讀取某行第一列數(shù)據(jù)
        Object sampleNo = objects.get(0);
        //讀取某行第二列數(shù)據(jù)
        Object sampleName = objects.get(1);
        //員工id
        empDO.setEmpId(Integer.parseInt(sampleNo.toString()));
        //員工姓名
        empDO.setName(sampleName.toString());
        empDOS.add(empDO);
        //這里沒有做數(shù)據(jù)插入到數(shù)據(jù)庫的操作,我用的是mybatisplus
        System.out.println(empDO);
    }
}

三、測試

(一)文件準備:

(二)選擇導(dǎo)入文件

在這里插入圖片描述

(三)進入到業(yè)務(wù)處理

在這里插入圖片描述

 到此這篇關(guān)于springboot layui hutool Excel導(dǎo)入的實現(xiàn)的文章就介紹到這了,更多相關(guān)springboot layui hutool Excel導(dǎo)入內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Scala之文件讀取、寫入、控制臺操作的方法示例

    Scala之文件讀取、寫入、控制臺操作的方法示例

    這篇文章主要介紹了Scala之文件讀取、寫入、控制臺操作的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Java畢業(yè)設(shè)計實戰(zhàn)之財務(wù)預(yù)算管理系統(tǒng)的實現(xiàn)

    Java畢業(yè)設(shè)計實戰(zhàn)之財務(wù)預(yù)算管理系統(tǒng)的實現(xiàn)

    這是一個使用了java+SSM+Jsp+Mysql+Layui+Maven開發(fā)的財務(wù)預(yù)算管理系統(tǒng),是一個畢業(yè)設(shè)計的實戰(zhàn)練習(xí),具有財務(wù)預(yù)算管理該有的所有功能,感興趣的朋友快來看看吧
    2022-02-02
  • Java微信公眾平臺開發(fā)(12) 微信用戶信息的獲取

    Java微信公眾平臺開發(fā)(12) 微信用戶信息的獲取

    這篇文章主要為大家詳細介紹了Java微信公眾平臺開發(fā)第十二步,微信用戶信息的獲取,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 新手了解java 反射基礎(chǔ)知識

    新手了解java 反射基礎(chǔ)知識

    這篇文章主要介紹了Java反射機制的相關(guān)內(nèi)容,涉及了class類的動態(tài)加載,獲取成員變量、構(gòu)造函數(shù)信息等信息,需要的朋友可以參考下,希望對你有所幫助
    2021-07-07
  • Java基礎(chǔ)類庫之StringBuffer類用法詳解

    Java基礎(chǔ)類庫之StringBuffer類用法詳解

    String類是在所有開發(fā)項目開發(fā)之中一定會使用的一個功能類。雖然String類很好用,但也有弊端——內(nèi)容不允許頻繁修改,所以為了解決問題,我們提供了StringBuffer類。本文就來講講StringBuffer類的用法
    2022-07-07
  • maven導(dǎo)入本地倉庫jar包,報:Could?not?find?artifact的解決

    maven導(dǎo)入本地倉庫jar包,報:Could?not?find?artifact的解決

    這篇文章主要介紹了maven導(dǎo)入本地倉庫jar包,報:Could?not?find?artifact的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • 如何使用Spring+redis實現(xiàn)對session的分布式管理

    如何使用Spring+redis實現(xiàn)對session的分布式管理

    本篇文章主要介紹了如何使用Spring+redis實現(xiàn)對session的分布式管理,本文主要是在Spring中實現(xiàn)分布式session,采用redis對session進行持久化管理,感興趣的小伙伴們可以參考一下
    2018-06-06
  • java使用UDP實現(xiàn)點對點通信

    java使用UDP實現(xiàn)點對點通信

    這篇文章主要為大家詳細介紹了java使用UDP實現(xiàn)點對點通信,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • SpringBoot自動配置的原理詳解

    SpringBoot自動配置的原理詳解

    這篇文章主要介紹了SpringBoot自動配置的原理詳解,本節(jié)更詳細地介紹了如何使用 Spring Boot,它涵蓋了諸如構(gòu)建系統(tǒng)、自動配置以及如何運行應(yīng)用程序等主題,我們還介紹了一些 Spring Boot 最佳實踐,需要的朋友可以參考下
    2023-09-09
  • 關(guān)于Java如何用好線程池的方法分享(建議收藏)

    關(guān)于Java如何用好線程池的方法分享(建議收藏)

    這篇文章主要來和大家分享幾個關(guān)于Java如何用好線程池的建議,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的小伙伴可以了解一下
    2023-06-06

最新評論

新昌县| 上蔡县| 云南省| 泗洪县| 宝清县| 楚雄市| 宜阳县| 上蔡县| 册亨县| 阿巴嘎旗| 丰宁| 连南| 滨州市| 泸水县| 万州区| 沈丘县| 隆尧县| 梨树县| 章丘市| 镶黄旗| 林西县| 宜章县| 文成县| 江西省| 皋兰县| 徐闻县| 西华县| 卓尼县| 内江市| 花莲市| 沛县| 东安县| 湄潭县| 勐海县| 嘉黎县| 永年县| 承德市| 万安县| 东乡族自治县| 武平县| 维西|