专栏首页osc同步分享-java技术分享站Excel-converter:一行代码实现java中excel数据导入导出 转

Excel-converter:一行代码实现java中excel数据导入导出 转

Excel-converter 是我去年春节之际开发的一个 java中excel数据导入导出 的项目。

当时在某公司担任 java 工程师已经好几年,工作上参与的几个项目都有许多excel导入导出的功能。所以在完成工作之后,我就很想做一个使用简单的工具,能满足大部分项目的这种数据导入导出 excel 的功能。

在去年元旦假期那会,我就开始准备这个项目,假期结束后,还没有好的方法实现功能。之后由于工作紧张,这个项目偶尔深夜才能提交一点代码。项目暂时被搁浅了……

这个项目大部分功能的开发,是在春节假期。当时回到老家,每天还是对着电脑写代码,想着怎样实现才能在使用的时候更加方便……

春节假期结束之前,一个初步的版本已经出来了(excel-converter),用起来虽然不难,但是一点也不简洁。于是得益于springboot自动配置和约定大于配置的方向,我开发了 excel-converter-starter,是一个依赖 excel-converter 的项目,也是一个springboot starter项目,这个项目的使用就很简洁了:

简洁程度如下:

加入 excel-converter-starter 依赖、注入ExExporter后,使用如下一句代码导出excel:

exExporter.export(dataList, file);

这样做使用的都是默认的配置。

而对于导入 Excel 中的数据,只要指定了excel数据列对应的实体属性,使用 excel-converter-starter, 也可以一句代码导入为java的List<T>:

List<Person> peo = exImporter.convert("./企业人员汇总表.xlsx", Person.class);

一句代码导入的前提:在excel数据的第一行指定数据列对应的java实体的属性。这一行在源码中称作 nameRow,这行的位置也可以自由配置。

当然,以上一句代码导入导出的,一些相关属性也可以自由配置;对于excel文件的参数也可以使用File实例、String路径、以及输入输出流。

这段时间,代码一直存在在gitee,已经开源出去了。

考虑到在实际使用的时候,不止有导出list的要求,也常常会有按照给定的模板,用数据填充模板的要求。所以,在假期结束之后,也抽空做了这样的功能。

后来,工作上的项目果然要实现这样的导出,同项目组的开发人员都嫌这个任务太麻烦,而我自告奋勇接下了,将自己开源的项目jar包加入,简单配置调用就实现了功能,接下来的两天就上班看乱弹、再刷一 刷动弹…… (老板也没发现)

今年7月份,我申请了域名 jvm123.com (灵感来自于 java1234 知识资源分享网),于是,我就以 com.jvm123 的名义将完善后的这两个项目发布到 maven 中央仓库,作为1.0 版本,这样任何人都可以使用了。

在中央仓库搜索 jvm123 就可以看到 excel converter 和 excel converter starter,如下:

mvn中央仓库-jvm123.com

项目的源码可以访问码云空间: https://gitee.com/yawensilence/excel-converter

以下是 excel converter 和 excel converter starter 两个项目详细使用说名的几篇博文:

http://jvm123.com/?s=excel-converter

本文转载自:jvm123-java技术分享站 

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 利用java的接口实现回调

    onclick,onfocus,onload,oncreate...... 我们在java GUI 编程、js事件、android组建中常常见到这些单词,这些...

    yawn
  • SpringCloud简明教程笔记

    本文涵盖 spring cloud 学习示例程序,eureka,feign,rebbion,hystrix,zuul,config,bus使用示例(使用svn管...

    yawn
  • java 实现棋盘覆盖问题

    问题描述:在一个2k*2k的棋盘中,有一个特殊方格,要求用L型骨牌覆盖满除特殊方格外的所有其他方格,且骨牌不得重叠.(骨牌可以旋转放置) 输入:棋盘的边长、特殊...

    yawn
  • 小程序导出数据到excel表,借助云开发后台实现excel数据的保存

    关于云函数的创建,我这里不多说了。如果你连云函数的创建都不知道,建议你去小程序云开发官方文档去看看。或者看下我录制的云开发入门的视频:https://edu.c...

    编程小石头
  • 关于一次性的数据输入,excel字符串连接保存到服务器还是CRUD?

    开发中遇到个问题,线下一个紧急的活动,给一个excel的文件,要把里面的一次性的数据放进活动里面,说真的几百几千个数据啊,手写进数据库不是更麻烦了吗?

    ydymz
  • Excel简化办公系列之四 | 盘点Excel中那些少有人知道却实用的功能

    本文为CDA作者青菜原创文章,转载请注明来源 编者按:CDA作者青菜将在近期发布「Excel简化办公」系列文章,本文是第四篇;更多精彩请持续关注~ 1.恢复未保...

    CDA数据分析师
  • python selenium - 利用excel实现参数化

    前言 在进行软件测试或设计自动化测试框架时,一个比可避免的过程就是: 参数化,在利用python进行自动化测试开发时,通常会使用excel来做数据管理,利用xl...

    苦叶子
  • python selenium - 利用excel实现参数化

    前言 在进行软件测试或设计自动化测试框架时,一个比可避免的过程就是: 参数化,在利用python进行自动化测试开发时,通常会使用excel来做数据管理,利用xl...

    苦叶子
  • python selenium - 利用excel实现参数化

    前言 在进行软件测试或设计自动化测试框架时,一个比可避免的过程就是: 参数化,在利用python进行自动化测试开发时,通常会使用excel来做数据管理,利用xl...

    苦叶子
  • python selenium2示例 - 利用excel实现参数化

    前言 在进行软件测试或设计自动化测试框架时,一个比可避免的过程就是: 参数化,在利用python进行自动化测试开发时,通常会使用excel来做数据管理,利用xl...

    苦叶子

扫码关注云+社区

领取腾讯云代金券