又是很久没写博客了,最近在弄一个批量导入的功能,按照古老的做法,当然是一行一行的解析然后根据字段所在的下标或者一列一列的解析依次赋值给bean对象。但是这种古老的方法弊端确实太多,于是想弄一个,根据表头中文名来自动匹配字段,然后根据行数自动创建bean对象的方式,实现标准数据的通用解析。
在具体实现之前,首先得确定一个问题:你了解java的泛型吗?
为什么我会提出这个问题,因为既然是做通用的,那么你的bean对象就一定不是固定的,这就必须用到泛型。
实现(理论):
1、获取前端上传的文件(spring mvc方式)
@RequestParam(value = "file", required = true) MultipartFile file
2、获取输入流
InputStream input = file.getInputStream();
3、定义一个Map,以excel表头作为key,以bean字段名作为value
Map<String, Object> mapper = new HashMap<>();
mapper.put("联系人", "linkman");
mapper.put("电话", "phone");
mapper.put("详细地址", "address");

本文介绍了如何使用Java泛型处理批量导入功能,通过表头中文名匹配字段并动态创建Bean对象。解析Excel时,不再依赖固定字段下标,而是基于表头信息,实现数据的通用解析。内容包括文件上传、泛型理解和Bean封装过程。
最低0.47元/天 解锁文章

9912

被折叠的 条评论
为什么被折叠?



