POI:接收上传上来的excel,解析并导入到数据库

目录

1、控制层

2、业务层(主要逻辑)


1、控制层

因为前端设置了只能上传1个文件,这里直接取一个。

java 复制代码
@RequestMapping(value = "/shebeiDaoru.ctrl", method = RequestMethod.POST, produces = "application/json;charset=UTF-8")
	public @ResponseBody Map<String, Object> shebeiDaoru(HttpServletRequest request,
			@RequestParam("file") MultipartFile[] files) {
		return shebeiService.shebeiDaoru(files[0]);
	}

2、业务层(主要逻辑)

通过multipartFile直接获取输入流,构建HSSFWorkbook。

java 复制代码
@SuppressWarnings("resource")
	@Override
	public Map<String, Object> shebeiDaoru(MultipartFile multipartFile) {
		try {
			Workbook workbook = new HSSFWorkbook(multipartFile.getInputStream());
			// 获取第一张sheet。
			Sheet sheetAt = workbook.getSheetAt(0);
			int index=0;
			for(Row row:sheetAt) {
				//跳过第一行
				if(index==0) {
					index++;
					continue;
				}
				Cell cell0 = row.getCell(0);
				Cell cell1 = row.getCell(1);
				Shebei shebei = new Shebei();
				shebei.setCode(cell0.getStringCellValue());
				shebei.setName(cell1.getStringCellValue());
				shebei.setStatus(JConstant.status_1);
				shebeiMapper.insert(shebei);
			}
			
		} catch (IOException e) {
			e.printStackTrace();
		}
		return null;
	}

参考文献:

POI 读取/导出 Excel 文件_poi 读取excel-CSDN博客

相关推荐
日月云棠6 小时前
各版本JDK对比:JDK 25 特性详解
java
用户8307196840827 小时前
Spring Boot 项目中日期处理的最佳实践
java·spring boot
JavaGuide7 小时前
Claude Opus 4.6 真的用不起了!我换成了国产 M2.5,实测真香!!
java·spring·ai·claude code
IT探险家8 小时前
Java 基本数据类型:8 种原始类型 + 数组 + 6 个新手必踩的坑
java
花花无缺8 小时前
搞懂new 关键字(构造函数)和 .builder() 模式(建造者模式)创建对象
java
用户908324602738 小时前
Spring Boot + MyBatis-Plus 多租户实战:从数据隔离到权限控制的完整方案
java·后端
桦说编程8 小时前
实战分析 ConcurrentHashMap.computeIfAbsent 的锁冲突问题
java·后端·性能优化
爱可生开源社区9 小时前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
程序员清风12 小时前
用了三年AI,我总结出高效使用AI的3个习惯!
java·后端·面试
beata13 小时前
Java基础-13: Java反射机制详解:原理、使用与实战示例
java·后端