java大数据批量导入Excel
时间: 2020-12-07 00:48:29
来源:网络
作者:自由
分类:java
简介:
大家在做项目开发的时候,经常会用到批量导入数据,尤其是做ERP或者商城等相关系统的时候需要导入物料、订单、用户等信息,小编在前人的经验基础上,总结了一份element ui+spring boot大数据批量导入Excel的代码,希望能够帮助大家,下面废话就不多说了,开始搞代码。
1.element ui前台导入代码
<el-upload class="text_uploader"
:show-file-list="false"
:before-upload="beforeUpload"
:on-success="onSuccess"
:on-error="onError"
:disabled="importDataDisabled"
:headers="importHeaders"
:action="/sys/sysUser/importData">
<el-button :disabled="importDataDisabled" type="success" :icon="importDataBtnIcon">
{{importDataBtnText}}
</el-button>
</el-upload>
2.java后台导入系统
/**
* excel导入
* R为自定义的返回(code/message之类的,根据自己的情况来修改)
*/
@PostMapping("/importData")
public String importData(MultipartFile file, HttpServletRequest req) throws IOException {
InputStream inputStream = null;
List<List<Object>> list = null;
if (file.isEmpty()) {
return "文件不能为空";
}
try {
inputStream = file.getInputStream();
list = this.getBankListByExcel(inputStream, file.getOriginalFilename());
inputStream.close();
// 插入数据库
for (int i = 0; i < list.size(); i++) {
List<Object> itemData = list.get(i);
// 用户实体
User user = new User();
// 用户编码
user.setUserCode(String.valueOf(itemData.get(0)));
// 用户名
user.setUserName(String.valueOf(itemData.get(1)));
// 性别
user.setSex(String.valueOf(itemData.get(2)));
// 出生日期
if (String.valueOf(itemData.get(3)) != null) {
Date BirthDate = new SimpleDateFormat("yyyy/MM/dd").parse(String.valueOf(itemData.get(3)));
user.setBirthDate(BirthDate);
}
// 创建时间
user.setCreateTime(new Date());
// 更新时间
user.setModifyTime(new Date());
user.setDelFlag("0");
user.setStatus("0");
// 判断是否存在
UserPageInvo invo = new UserPageInvo();
invo.setUserCode(user.getUserCode());
List<UserOut> Userlist = this.UserService.getUserList(invo);
// 不存在添加
if (Userlist == null || Userlist.size() == 0) {
UUID uuid = UUID.randomUUID();
user.setUserId(uuid.toString());
int res = this.UserService.insertUser(user);
} else {
// 存在更新
user.setUserId(Userlist.get(0).getUserId());
int res = this.UserService.updateUser(user);
}
}
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
return "上传成功";
}
单条数据新增修改的时候基本上不用导入就可以,不过一般遇到业务比较复杂的系统,我们导入功能还是对于用户来说还是挺方便的,后续我会分享更多的技术相关的内容,请大家多多关注。
标签:java
文章声明
版权声明:本文为作者原创,仅用于本站访客学习、研究和交流目的,未经授权禁止转载
本文标题:
java大数据批量导入Excel
了解
作者
一个90后草根站长!13年入行。一直潜心研究技术,一边工作一边积累经验,分享一些个人后端技术(java、python、c#、php等),以及前端相关等心得。
站长
推荐
友情
链接