SpringMVC接收上传Excel文件中读取数据过程分析
导读:这篇文章给大家介绍了“SpringMVC接收上传Excel文件中读取数据过程分析”的相关知识,讲解详细,步骤过程清晰,对大家进一步学习和理解“SpringMVC接收上传Excel文件中读取数据过程分析”有一定的帮助,希望大家阅读完这篇文章能...
这篇文章给大家介绍了“SpringMVC接收上传Excel文件中读取数据过程分析”的相关知识,讲解详细,步骤过程清晰,对大家进一步学习和理解“SpringMVC接收上传Excel文件中读取数据过程分析”有一定的帮助,希望大家阅读完这篇文章能有所收获。下面就请大家跟着小编的思路一起来学习一下吧。系统中常用到的批量导入功能,根据Excel内容批量插入,这里实现获取上传的Excel内容,由于offer2003前和2007后的版本所使用的API不一样,这里也做了兼容处理,兼容2003和2007
1.引入maven包
org.apache.poipoi3.9org.apache.poipoi-ooxml3.9org.apache.poipoi-ooxml-schemas3.9
2.Controller-接收上传的文件和解析获取内容--
@RequestMapping(value = "/import", method = RequestMethod.POST)
public String importLogisticsCcode(@RequestParam("fileName") MultipartFile file) throws Exception {
// 获取文件名
String fileName = file.getOriginalFilename();
if (StringUtils.isEmpty(fileName)){
return "文件不能为空";
}
// 获取文件后缀
String prefix=fileName.substring(fileName.lastIndexOf("."));
if (!prefix.toLowerCase().contains("xls") &
&
!prefix.toLowerCase().contains("xlsx") ){
return "文件格式异常,请上传Excel文件格式";
}
// 防止生成的临时文件重复-建议使用UUID
final File excelFile = File.createTempFile(System.currentTimeMillis() "", prefix);
file.transferTo(excelFile);
//由于2003和2007的版本所使用的接口不一样,所以这里统一用Workbook做兼容
boolean isExcel2003 = prefix.toLowerCase().endsWith("xls")?true:false;
Workbook workbook = null;
if(isExcel2003){
workbook = new HSSFWorkbook(new FileInputStream(excelFile));
}
else{
workbook = new XSSFWorkbook(new FileInputStream(excelFile));
}
//Excel表中的内容
List
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: SpringMVC接收上传Excel文件中读取数据过程分析
本文地址: https://pptw.com/jishu/654985.html
