⼤量数据导⼊EXCEL的⽅法
⼀. 导⼊⽣成Excel
原始的做法:
停车场门禁系统
将数据加载到内存中,导⼊Excel,此⽅法的弊端:1.⼤量数据加载到内存中,使机器变得缓慢
2.⼤量数据在导⼊Excel时形成⼤量cell对象产⽣OOM
在使⽤TOMCAT的情况下,JVM最⾼只能⽀持到2G内存,则会发⽣内存溢出的情况。此时的内存开销主要是两部分,⼀部分是⼤量数据加载到内存,另⼀部分是写⼊⼀个EXCEL 时形成⼤量cell对象的开销。由于JVM的GC机制是不能强制回收的.
采⽤的⽅案是:将⼤量要导出的数据放⼊临时表分批次形成多个Excel⽂件后合并.说明:1.⼤量要导出的数据放⼊临时表
校正死亡率
⼤量数据有可能是在海量数据表⾥通过条件查询出来的,这样可以有效避免多次在海量数据中查询,提⾼了查询效率 2.分批次形成多个Excel
⽐形成⼀个Excel的多个sheet好,因为多个sheet形式需要将整个Excel加载到内存中,那么sheet越多,Excel越⼤.改多个SHEET页为多个EXCEL。通过多次⽣成,可以在后⾯EXCEL⽣成所需要的内存不⾜时,有效回收前⾯⽣成EXCEL时占⽤的内存。
3.将多个Excel合并
直录播系统⼆. Excel导出⼊库
镍铬合金2.采⽤eventusermodel⽅式读取excel数据,分块读取数据并批量⼊临时表
喷淋嘴>无线图像传输3.利⽤存储过程或其他纯sql语句来验证临时表(Temp1)中的数据
4.将验证失败数据放⼊存储⾄校验失败的临时表中(Temp2)
5.将临时表(Temp1)中的数据插⼊库表