当前位置: 首页 > news >正文

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

目录

1、控制层

2、业务层(主要逻辑)


1、控制层

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

@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。

@SuppressWarnings("resource")@Overridepublic 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博客

相关文章:

  • Kafka中的时间轮算法
  • 2024广东省职业技能大赛云计算赛项实战——Ansible部署Zabbix
  • error: the type ‘const zjloc::<lambda(const Vec2i, const Vec2i)>’
  • JAVA NIO(二) Buffer和Channel
  • Elasticsearch:倒数排序融合 - Reciprocal rank fusion - 8.14
  • go的有栈和无栈
  • C#开发-集合使用和技巧(一)常用集合和方法介绍
  • 设计模式——访问者模式
  • python从入门到精通1:注释
  • Android 屏幕适配
  • python_根据关键词匹配文件中的数据并绘图
  • python学习—字典(Dictionary)
  • 【自动驾驶】运动底盘状态数据:里程计、IMU、运动学分析、串口通信协议
  • 计算机组成原理网课笔记2
  • 【刷力扣】23. 合并 K 个升序链表(dummy节点技巧 + 分治思维 + 优先队列)
  • 【Leetcode】104. 二叉树的最大深度
  • 【跃迁之路】【669天】程序员高效学习方法论探索系列(实验阶段426-2018.12.13)...
  • CSS3 变换
  • docker-consul
  • JS进阶 - JS 、JS-Web-API与DOM、BOM
  • php ci框架整合银盛支付
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 从setTimeout-setInterval看JS线程
  • 仿天猫超市收藏抛物线动画工具库
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 蓝海存储开关机注意事项总结
  • 前端_面试
  • 浅谈JavaScript的面向对象和它的封装、继承、多态
  • 时间复杂度与空间复杂度分析
  • 为视图添加丝滑的水波纹
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • 新版博客前端前瞻
  • 一个6年java程序员的工作感悟,写给还在迷茫的你
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • 函数计算新功能-----支持C#函数
  • 京东物流联手山西图灵打造智能供应链,让阅读更有趣 ...
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • # Apache SeaTunnel 究竟是什么?
  • #【QT 5 调试软件后,发布相关:软件生成exe文件 + 文件打包】
  • #前后端分离# 头条发布系统
  • (21)起落架/可伸缩相机支架
  • (day 12)JavaScript学习笔记(数组3)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (黑马出品_高级篇_01)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式
  • (转载)从 Java 代码到 Java 堆
  • .NET MVC之AOP
  • .NET4.0并行计算技术基础(1)
  • .net6解除文件上传限制。Multipart body length limit 16384 exceeded
  • @Not - Empty-Null-Blank
  • [ linux ] linux 命令英文全称及解释
  • [ vulhub漏洞复现篇 ] Django SQL注入漏洞复现 CVE-2021-35042
  • []我的函数库
  • [AIGC] Kong:一个强大的 API 网关和服务平台
  • [BUUCTF NewStarCTF 2023 公开赛道] week3 crypto/pwn
  • [C++]运行时,如何确保一个对象是只读的