基于Spring MVC实现基于form表单上传Excel文件,批量导入数据
2024-08-29 10:59:34
在pom.xml中引入:
<!--处理2003 excel-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.16</version>
</dependency>
<!--处理2007 excel-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.16</version>
</dependency>
applicationContext.xml:
<!--上传组件-->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="utf-8"></property>
<!--1024*1024*5即5M-->
<property name="maxUploadSize" value="5242880"></property>
</bean>
页面:
<div>
<form method="post" action="/Cyberspace/main/informationBatchAdd.do" enctype="multipart/form-data">
<input type="file" id="excelFile" name="file"/>
<button type="submit">批量上传</button>
</form>
</div>
Java后台代码:
@RequestMapping(value = "informationBatchAdd", method = RequestMethod.POST)
@ResponseBody
public void informationBatchAdd(MultipartHttpServletRequest request) { try {
//得到上传的文件
MultipartFile fileFile = request.getFile("file");
//转换成输入流
InputStream in = fileFile.getInputStream();
XSSFWorkbook readWb = new XSSFWorkbook(in);
/*HSSFWorkbook readWb = new HSSFWorkbook(in);*/
//遍历该表格中所有的工作表,i表示工作表的数量 getNumberOfSheets表示工作表的总数
for (int i = 0; i < readWb.getNumberOfSheets(); i++) {
XSSFSheet sheet = readWb.getSheetAt(i);
// 循环行Row
for (int rowNum = 1; rowNum <= sheet.getLastRowNum(); rowNum++) {
XSSFRow hssfRow = sheet.getRow(rowNum);
if (hssfRow != null) {
for (int colNum = 0; colNum < hssfRow.getPhysicalNumberOfCells(); colNum++) {
System.out.println(hssfRow.getCell(colNum));
}
//赋值实例对象 做插入数据库操作
...
}
}
} } catch (Exception e) { e.printStackTrace();
} }
最新文章
- (译)你应该知道的jQuery技巧
- 【BZOJ-4698】Sandy的卡片 后缀数组
- Java接口之间的继承
- MetInfo数据库结构表
- blur效果,模糊效果css
- JS函数(获得widn)
- 高性能javascript
- PCI 总线学习笔记
- Git学习(1)-本地版本库的创建
- RX 和 TX
- 跟随我在oracle学习php(12)
- ajax相关知识点
- hdu 1394 (线段树求逆序数)
- django+uwsgi+nginx数据表过大引起";out of memory for query result";
- dbca时报错:ORA-12705(NLS_LANG=AMERICAN_AMERICA.UTF8);
- Yeoman的好基友:Grunt
- bug ,improvements, features jira等信息
- Extjs4 页面加载先白屏后显示的bug解决
- Linux虚拟内存和物理地址的理解【转】
- 理解ValueStack的基本机制 OGNL表达式
热门文章
- 我的Android进阶之旅------>解决Android Studio报错:DefaultAndroidProject : Unsupported major.minor version 52.0
- linux下Pl353 NAND Flash驱动分析
- 怎样将Excel包含某字符的单元格填充颜色
- ThreadLocal 示例
- Hurst指数以及MF-DFA
- 认识与学习BASH(下)
- Delphi 正则表达式之TPerlRegEx 类的属性与方法(6): EscapeRegExChars 函数
- 自动化测试调查问卷送《QTP自动化测试最佳实践》
- java zookeeper权限控制ACL(digest,IP)
- 运行报警告UserWarning: Unknown extension is not supported and will be removed warn(msg)