导入数据
开发工具与关键技术:VS与MVC
作者:刘华叶
撰写时间:2019年5月15日
导入和导出都是两个重要的知识点,两者相辅相成,之前和大家介绍了导出数据,现在就在和大家讲一下导入数据。
首先在视图搭建页面,然后设置打开导入模态框,在重置表单,弹出模态框,这里就设置一个禁用导入数据库的按钮,在清空表格,在设置背景时不关闭模态框,这里就用到它的两个属性,接下来在去下载模板。
导入数据之前先创建好模板,把它保存到自己的项目中,再去实现下载模板。
然后在控制器这边设置方法名称,后面在设置关键字,和参数,接着在设置导入数据的路径,在判断一下这个文件用IO流能不能读取的到,如果读取的到就可以直接进去获取文件名称,用Path格式转化为文件,最终在把File这个文件返回来,如果读取不了,就提示模板文件不存在,请联系系统运维人员。
模板下载好之后,那就是将模板上传了,既然是上传文件,又会涉及到一些的判断,当判断都正确的时候,才能完成文件上传。
我们先来了解一下思路如下:
第一步:判断文件类型是否是.xls;判断正确后再执行下面操作:
1、获取上传的文件,2、将文件转换为二进制数组
3、再将二进制数组转为为内存流,4、最后利用NPOI将内存流的数据读取到Excel工作簿
第二步:判断工作簿中是否有工作表;
第三步:判断工作表中是否有数据;
第四步:获取数据,保证数据的准确性;
第五步:最后将数据保存了。
完成这些步骤之后模板中的数据也就上传成功了。下面就是将数据保存到数据库了,也就是执行批量新增。
首先创建一个方法名称,在通过ReturnJson这个方法对returnJson进行实例化,在通过try捕捉错误,在记录保存成功的条数,和已经存在的数据。
下面就分为这个几个步骤:
第一步:将保存在Session中的数据获取到,在进行判断;
第二步:判断数据是否为空;
第三步:判断数据是否重复;
第四步:执行新增,再保存
完成这些步骤,导入的代码就成功了,最后再到视图写一个方法请求就可以了,就能完成导入数据了。