我正在玩一个游戏框架项目,我的项目的一部分需要在给定的时间间隔内插入大量数据。
我在这里有两个问题:
1- 我需要尽快完成批量插入 sa 2- 当批量插入作业正在运行时,它会严重影响我的服务器响应时间。我不知道这是游戏框架或我的问题。
这是我当前的批量插入代码:
org.hibernate.Session session =
(org.hibernate.Session)SomeEntityModel.em().getDelegate();
Transaction tx = session.beginTransaction();
int i = 0;
for(Inventory o:inventories)
{
returnList.add(SomeEntityModel.getInstance(o));
i++;
if(i%100==0)
{
tx.commit();
session.flush();
session.clear();
tx=session.beginTransaction();
}
}
getInstance 模型将“o”对象转换为实体模型。
“o”对象大量来自网络服务,我将它们转换为“SomeEntityModel”,然后将其保存在 getInstance 方法中。
我需要知道是否有更好更快的方法来完成批量插入方法,以及是否有更好的方法来使用或优化作业运行时的服务器响应时间。
感谢您的帮助。