前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SpringBoot整合easyexcel实现Excel导入

SpringBoot整合easyexcel实现Excel导入

作者头像
JavaFish
发布2019-11-23 17:50:13
1.2K0
发布2019-11-23 17:50:13
举报
文章被收录于专栏:狗哥的 Java 世界

上篇《SpringBoot整合easyexcel实现Excel的导出》写了Excel如何导出,那么其实在提供的那几个工具类中已经有了导入的方法,只需要直接调用即可。下面我们来简单演示一下,如何导入。我们先看下Controller是如何写的

代码语言:javascript
复制
@PostMapping("/import/order")
public ResultMsg import_order(MultipartFile excel) {

    Object objList = ExcelUtil.readExcel(excel, new OrderExcelBO(), 1, 1);

    if (objList == null) {
        return ResultMsg.fail(500, "导入的数据不能为空");
    }

    List<OrderExcelBO> orderList = (List<OrderExcelBO>) objList;

    if (orderList == null || orderList.size() <= 0) {
        return ResultMsg.fail(500, "导入的数据不能为空");
    }

    orderList.forEach(System.out::println);

    return ResultMsg.success();
}

我们主要再看下readExcel()方法是如何写的

代码语言:javascript
复制
/**
     * 读取某个 sheet 的 Excel
     *
     * @param excel       文件
     * @param rowModel    实体类映射,继承 BaseRowModel 类
     * @param sheetNo     sheet 的序号 从1开始
     * @param headLineNum 表头行数,默认为1
     * @return Excel 数据 list
     */
    public static List<Object> readExcel(MultipartFile excel, BaseRowModel rowModel, int sheetNo, int headLineNum) {
        ExcelListener excelListener = new ExcelListener();
        ExcelReader reader = getReader(excel, excelListener);

        if (reader == null) {
            return null;
        }

        reader.read(new Sheet(sheetNo, headLineNum, rowModel.getClass()));

        return excelListener.getDatas();
    }

在底层的方法我就不贴出来了,我大家可在()文章里面找到需要的工具类,我们就直接看下运行结果。

导出结果

那么数据都已经打印出来了,那么存入数据库就超级简单了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-11-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一个优秀的废人 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档