前言:小编读写Excel使用的是EasyExcel,EasyExcel是一个基于Java的简单、省内存的读写Excel的开源项目。详细了解和使用请参考官方文档:EasyExcel
一、Excel示例
二、代码实现
1、引入依赖
<dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.2.7</version></dependency>
2、创建对象
importlombok.Data;importcom.alibaba.excel.annotation.ExcelProperty;@DatapublicclassUserExcel{@ExcelProperty(value="用户名",index=0)privateStringname;@ExcelProperty(value="登录名",index=1)privateStringloginName;@ExcelProperty(value="用户密码",index=2)privateStringloginPassword;}
3、读写Excel
/***批量导入用户信息*/@OverridepublicvoidbatchInsert(MultipartFilefile)throwsIOException{List<User>users=newArrayList<>();List<UserExcel>userExcels=newArrayList<>();//读excelEasyExcel.read(file.getInputStream(),UserExcel.class,newAnalysisEventListener<UserExcel>(){@Overridepublicvoidinvoke(UserExceluserExcel,AnalysisContextanalysisContext){Useruser=newUser();BeanUtils.copyProperties(userExcel,user);users.add(user);userExcels.add(userExcel);}@OverridepublicvoiddoAfterAllAnalysed(AnalysisContextanalysisContext){//存储到数据库中users.forEach(user->baseMapper.insert(user));System.out.println("excel文件读取完毕!");}}).sheet().doRead();;//写excelEasyExcel.write(newFile("D://输入用户信息.xlsx"),UserExcel.class).sheet().doWrite(userExcels);
4、写Excel成功示例