使用Hibernate提高将数据保存到sql数据库的速度

我必须使用Hibernate将20000-30000条记录保存到MySQL中。这样Hibernate也会生成20000-30000个插入查询。我需要1-2分钟才能完成所有工作,这将导致504请求超时,无法访问我的网站。

首先,我是这样做的:

for (some loop elements) {
    Object foo = new Object();
    // do some foo get/set to fulfill the fields.
    objectService.save(foo);
}

那是很多时间。然后我尝试将列表保存到db中,例如:

List<Object> objs = new ArrayList<>();
for (some loop elements) {
    Object foo = new Object();
    // do some foo get/set to fulfill the fields.
    objs.add(foo);
}
objectService.saveAll(objs);

类似的东西。

将单个对象/记录保存到db中,与保存列表相比需要更长的时间。但是保存列表仍然会导致超时。所以问题是:是否有任何解决方案可以加快流程,而查询却比我的解决方案少?

谢谢!

yamating 回答:使用Hibernate提高将数据保存到sql数据库的速度

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3118112.html

大家都在问