EasyExcelFactory 导入导出功能的实战使用

这篇具有很好参考价值的文章主要介绍了EasyExcelFactory 导入导出功能的实战使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

EasyExcelFactory 导入导出功能的实战使用分享:

1、jar包引入

        <!-- 阿里巴巴Excel处理-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>3.0.6</version>
        </dependency>

2、excel文档准备

EasyExcelFactory 导入导出功能的实战使用,java相关,java

注意:首行名称要和后面实体类里注解的名称保持一样,否则失效。

3、实体类

@Data
@HeadRowHeight(20)
@ColumnWidth(20)
public class DemoData {
    @ExcelProperty("id")
    private Long id;

    @ExcelProperty("name")
    private String name;

    @ExcelProperty("model")
    private String model;

    @ExcelProperty("tail")
    private String tail;
     
}

4、控制层接口样例

 @PostMapping("/import/userBox")
  public ResponseResult<Boolean> importUserBox(
    @RequestParam("file") MultipartFile file,
    @RequestParam("start") Integer  start,
    @RequestParam(value = "sheetNo", required = false, defaultValue = "0") Integer sheetNo) {
    try {
      UserBoxConfigListener listener = new UserBoxConfigListener();
      EasyExcelFactory
        .read(file.getInputStream(), UserBoxConfigBo.class, listener)
        .sheet(sheetNo)
        .headRowNumber(start);
      List<UserBoxConfigAddReq> list = listener.getList();
      return ResponseResult.success(userBoxConfigService.batchAdd(list));
    } catch (Exception e) {
      e.printStackTrace();
      return ResponseResult.error(e.getMessage());
    }
  }

5、监听类继承


@Slf4j
public class UserBoxConfigListener extends AnalysisEventListener<UserBoxConfigBo> {

  private List<UserBoxConfigAddReq> list;

  public UserBoxConfigListener() {
    list = new ArrayList<>();
  }

  @Override
  public void invoke(UserBoxConfigBo data, AnalysisContext context) {
    UserBoxConfigAddReq item = BeanUtil.copy(data, UserBoxConfigAddReq.class);
    list.add(item);
  }

  @Override
  public void doAfterAllAnalysed(AnalysisContext context) {
    log.info("表格成功解析");
  }

  public List<UserBoxConfigAddReq> getList() {
    return list;
  }
}

 

6、postman 接口调用

调用后成功解析获取到数据。

参考文章:基本使用

基本配置

使用演示

到此、告一段落,后期我们会分享其高级用法,敬请期待!文章来源地址https://www.toymoban.com/news/detail-817602.html

到了这里,关于EasyExcelFactory 导入导出功能的实战使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用Java导入、导出excel详解(附有封装好的工具类)

    😜 作           者 :是江迪呀 ✒️ 本文 : Java 、 Excel 、 导出 、 工具类 、 后端 ☀️ 每日   一言 :有些事情不是对的才去坚持,而是坚持了它才是对的! 我们在日常开发中,一定遇到过要将数据导出为 Excel 的需求,那么怎么做呢?在做之前,我们需要思考

    2024年02月06日
    浏览(39)
  • Java 使用hutool工具进行导出导入excel表格(代码很简单)

    创建一个Controller进行测试 

    2024年02月07日
    浏览(54)
  • [无网络环境]dbeaver导入导出备份数据库的相关配置

            dbeaver转储数据库、恢复数据库、执行脚本都会用到本地客户端,如果没有配置会自动联网下载,然而在没有网络的环境中,就需要手动配置本地客户端。本文讲解,如何配置,以及需要什么文件。         配置客户端入口有多个,上图中的三个功能到最后一步,

    2024年02月11日
    浏览(35)
  • EasyExcel实现Excel文件导入导出功能

    Java领域解析、生成Excel比较有名的框架有Apache poi、jxl等。但他们都存在一个严重的问题就是非常的耗内存。如果你的系统并发量不大的话可能还行,但是一旦并发上来后一定会OOM或者JVM频繁的full gc。 EasyExcel是阿里巴巴开源的一个excel处理框架,以使用简单、节省内存著称。

    2024年02月02日
    浏览(55)
  • js 实现导入导出功能(FileSave.js)

     点击导出按钮弹出文件框导出文件,点击导入选择文件获取文件数据,以下我保存的是json。 html:  js:   FileSaver.js 框架代码:

    2024年02月16日
    浏览(24)
  • 若依框架内自带的excel导入导出功能

    若依这个框架非常的神la奇ji,每次我想加入某个功能的时候都会报一些奇奇怪怪的错,其他项目里能用的代码复制粘贴过来就报错,然后逛一下官网发现官网已经集成了,然后用他官方集成的就不报错.就只许用你的不许用我自己的是吧?不多吐槽,下面开始. 导入: controller层:官方是

    2024年02月14日
    浏览(28)
  • Vue前端实现excel的导入、导出、打印功能

    导入导出依赖: npm install xlsx@0.16.9 npm install xlsx-style@0.8.13 --save 安装xlsx-style,运行报错 This relative module was not found: ./cptable in ./node_modules/xlsx-style@0.8.13@xlsx-style/dist/cpexcel.js 解决报错 在node_modulesxlsx-styledistcpexcel.js 807行 的 var cpt = require(\\\'./cpt\\\' + \\\'able\\\'); 改为: var cpt = cptable; 打印

    2023年04月08日
    浏览(34)
  • 探索ClickHouse——同时支持导入导出功能的文件格式

    在 《探索ClickHouse——安装和测试》中,我们使用clickhouse直接从文件中读取数据。clickhouse支持多种格式文件的导入导出,本节我们对此进行分类介绍。 原始的JSON格式只支持导入,不支持导入。同时支持导入和导出的是其他几种类型: JSONEachRow JSONStringsEachRow JSONCompactEachRow

    2024年02月07日
    浏览(30)
  • easypoi 模板导入、导出合并excel单元格功能

    hutool 导出复杂excel(动态合并行和列) java使用poi读取跨行跨列excel springboot集成easypoi并使用其模板导出功能和遇到的坑 Easypoi Excel模板功能简要说明 easypoi 模板导出兼容合并单元格功能 高校校舍使用情况统计表 单位(盖章): 填表人: 部门负责人: 分管校领导: 填表日期:

    2023年04月22日
    浏览(40)
  • spring boot 整合EasyPoi导入导出,下载模版功能

    name:Excel中的列名; width:指定列的宽度; needMerge:是否需要纵向合并单元格; format:当属性为时间类型时,设置时间的导出导出格式; desensitizationRule:数据脱敏处理,3_4表示只显示字符串的前3位和后4位,其他为*号; replace:对属性进行替换; suffix:对数据添加后缀。

    2024年02月11日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包