遇到poi和jdk的坑总结

https://blog.csdn.net/m0_37527542/article/details/74542587 这里面写的很好,都好用,不赘述了

补充几点自己遇到的坑

1、用swagger 的时候,自动回判断 enctype="multipart/form-data" 

会自动加入到请求头,不用理会

2、jdk1.7 和 poi 7 版本匹配,jdk 8 和 poi 14 (这个没测)

3、低版本 poi 只支持 excel 2003 如果你想批量导入excel2007 2010 要同时升级jdk和poi版本

4、建议在本地缓存一个文件,而不是直接用流来操作,而且缓存文件不要用请求名来定义路径,每次请求请求名ID均不同,会多出很多垃圾文件

		//方法1失败 编译就报错了,第三行
//		MultipartFile file = Mfile; 
//        CommonsMultipartFile cf= (CommonsMultipartFile)file; 
//        DiskFileItem fi = (DiskFileItem)cf.getFileItem(); 
//        File f = fi.getStoreLocation();
		//方法2错在第一步的转换
		CommonsMultipartFile cf = (CommonsMultipartFile) Mfile;
		File file = null;
		cf.transferTo(file);
		
		//第三种方式,注入, 是注入错了,还是不好使呢?
//		File file3 = (File) Mfile;
		//第四种方式 转换字节流,感觉效率低,还容易出错
		//有问题,poi直接爆出错误,非异常
//		InputStream is2 = Mfile.getInputStream();
//		Workbook wb = Workbook.getWorkbook(Mfile.getInputStream());
		
		//第五种方法,字节数组
//		byte[] buffer = Mfile.getBytes();

猜你喜欢

转载自blog.csdn.net/pengjj1223/article/details/79901105
今日推荐