java如何将excel数据导入数据库-亚博电竞手机版

java如何将excel数据导入数据库

这篇文章给大家分享的是有关java如何将excel数据导入数据库的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

1、根据业务需求设计数据库表

2、根据数据库表设计一个excel模板

模板的每列属性必须与表字段一一对应

3、环境准备

我这里项目环境是基于springboot单体式架构,持久层用的公司框架,内置了基于mybatis-plus的各种单表操作的方法。

导入依赖

org.apache.poipoi3.17org.apache.poipoi-ooxml3.17

4、通过插件生成表对应的实体类

/***tbzbzs:值班值守表*@authorzs*@date2021-12-1708:46:31**/@data@apimodel(value="值班值守表,对应表tb_zbzs",description="适用于新增和修改页面传参")publicclasstbzbzsextendsprobaseentity{privatestaticfinallongserialversionuid=1l;@apimodelproperty(value="id")privatestringid;//id@apimodelproperty(value="部门")privatestringbm;//部门@apimodelproperty(value="值班上报")privatestringzbsb;//值班上报@apimodelproperty(value="值班人员")privatestringzbry;//值班人员@apimodelproperty(value="上报时间")@datetimeformat(pattern="yyyy-mm-ddhh:mm:ss")privatejava.util.datesbsj;//上报时间@apimodelproperty(value="结束时间")@datetimeformat(pattern="yyyy-mm-ddhh:mm:ss")privatejava.util.datejssj;//结束时间@apimodelproperty(value="亚博电竞手机版的联系方式")privatestringlxfs;//亚博电竞手机版的联系方式@apimodelproperty(value="状态")privatestringzt;//状态/***逻辑删除*/@apimodelproperty(value="逻辑删除")privatestringdelflag;/***创建时间*/@apimodelproperty(value="创建时间")@datetimeformat(pattern="yyyy-mm-ddhh:mm:ss")privatedatecreatedate;}

5、自定义编写工具类

这里提供的是一个基础模板,根据业务的需求可以增加转换条件

importorg.apache.poi.hssf.usermodel.hssfworkbook;importorg.apache.poi.ss.usermodel.cell;importorg.apache.poi.ss.usermodel.row;importorg.apache.poi.ss.usermodel.sheet;importorg.apache.poi.ss.usermodel.workbook;importorg.apache.poi.xssf.usermodel.xssfworkbook;importjava.io.ioexception;importjava.io.inputstream;importjava.text.decimalformat;importjava.text.simpledateformat;importjava.util.arraylist;importjava.util.list;/***新增值班排班表导入excel表工具类*zyw*/publicclassimportexcelutil{privatefinalstaticstringexcel2003l=".xls";//2003-版本的excelprivatefinalstaticstringexcel2007u=".xlsx";//2007 版本的excel/***描述:获取io流中的数据,组装成list>对象*@paramin,filename*@return*@throwsexception*/publicstaticlist>getlistbyexcel(inputstreamin,stringfilename)throwsexception{list>list=null;//创建excel工作薄workbookwork=importexcelutil.getworkbook(in,filename);if(null==work){thrownewexception("创建excel工作薄为空!");}sheetsheet=null;rowrow=null;cellcell=null;list=newarraylist>();//遍历excel中所有的sheetfor(inti=0;ili=newarraylist

网站地图