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

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

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

一、導(dǎo)入依賴

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

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

(二)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>

必須推薦一波:

二、核心代碼

(一)前端按鈕

前端代碼不是核心,只是為了一個(gè)思路

//①按鈕
<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;//主要是這個(gè)
        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方法,這個(gè)地方通過MultipartFile參數(shù)就可以接收到上傳的Excel文件內(nèi)容了
    empService.importTemplate(file);
    return CommonResult.success("上傳成功");
}

service實(shí)現(xiàn)類代碼

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

@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);
    }
}

三、測(cè)試

(一)文件準(zhǔn)備:

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

在這里插入圖片描述

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

在這里插入圖片描述

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

相關(guān)文章

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

    Scala之文件讀取、寫入、控制臺(tái)操作的方法示例

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

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

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

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

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

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

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

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

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

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

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

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

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

    java使用UDP實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)通信

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

    SpringBoot自動(dòng)配置的原理詳解

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

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

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

最新評(píng)論

阿克陶县| 穆棱市| 玛沁县| 翁牛特旗| 莒南县| 海南省| 来宾市| 长沙县| 青阳县| 珲春市| 乌兰察布市| 琼海市| 烟台市| 沂水县| 航空| 民勤县| 仁寿县| 南昌市| 大化| 贺州市| 延寿县| 九龙县| 寿宁县| 吴忠市| 内乡县| 五峰| 博兴县| 三亚市| 巴彦淖尔市| 安顺市| 锡林浩特市| 汉阴县| 临沭县| 钟山县| 玉树县| 阿尔山市| 增城市| 合阳县| 永济市| 凤阳县| 威远县|