hibernate如何创建临时表 然后把上传的excel数据插入到临时表中??

时间:2022-09-18 19:59:45
有一个业务需求,用户会提交上来一个excel大约1000条数据。 然后和数据库比对excel里面的数据,然后得到重复数据。如果循环excel一条一条比对太慢了,所以想到的思路就是,建立一张临时表,然后把excel的数据插入到临时表去,然后再和后台的数据比对重复数据,问题是hibernate如何建立临时表,如何把数据大批量插入到excel 中,而且如何保证不同用户建立的临时表是不一样的,不然就会出现数据混乱的问题。。。求大神指点!!

4 个解决方案

#1


为什么要建立临时表,1000条数据,你直接读到数组里不行吗? hibernate如何创建临时表 然后把上传的excel数据插入到临时表中??

#2


引用 1 楼 lwb314 的回复:
为什么要建立临时表,1000条数据,你直接读到数组里不行吗? hibernate如何创建临时表 然后把上传的excel数据插入到临时表中??

如果用数组做的话 我怎么比对 不会是2层for循环吧 如果我数据库里也有1000条数据 岂不是1000*1000要做100W次判断

#3


引用 2 楼 zxd098 的回复:
Quote: 引用 1 楼 lwb314 的回复:

为什么要建立临时表,1000条数据,你直接读到数组里不行吗? hibernate如何创建临时表 然后把上传的excel数据插入到临时表中??

如果用数组做的话 我怎么比对 不会是2层for循环吧 如果我数据库里也有1000条数据 岂不是1000*1000要做100W次判断

1.你可以用HashSet过滤,数组里的1000跟数据库里的1000条,不需要循环。
2.你可以循环这1000条的主键,然后去主键库里查包含或者不包含的集合。这是循环1000次,查1次数据库,也能得到你要的结果。

#4


比出来重复的就先去掉了,会减少很多

#1


为什么要建立临时表,1000条数据,你直接读到数组里不行吗? hibernate如何创建临时表 然后把上传的excel数据插入到临时表中??

#2


引用 1 楼 lwb314 的回复:
为什么要建立临时表,1000条数据,你直接读到数组里不行吗? hibernate如何创建临时表 然后把上传的excel数据插入到临时表中??

如果用数组做的话 我怎么比对 不会是2层for循环吧 如果我数据库里也有1000条数据 岂不是1000*1000要做100W次判断

#3


引用 2 楼 zxd098 的回复:
Quote: 引用 1 楼 lwb314 的回复:

为什么要建立临时表,1000条数据,你直接读到数组里不行吗? hibernate如何创建临时表 然后把上传的excel数据插入到临时表中??

如果用数组做的话 我怎么比对 不会是2层for循环吧 如果我数据库里也有1000条数据 岂不是1000*1000要做100W次判断

1.你可以用HashSet过滤,数组里的1000跟数据库里的1000条,不需要循环。
2.你可以循环这1000条的主键,然后去主键库里查包含或者不包含的集合。这是循环1000次,查1次数据库,也能得到你要的结果。

#4


比出来重复的就先去掉了,会减少很多