Hibernate批处理将列表插入到具有唯一列的表中

时间:2014-03-24 09:54:51

标签: java mysql hibernate

我有一个包含1,000,000条记录的列表。

我想将列表插入到已有5,000,000条记录的表中。

代码:

Sample s = null;
for(int i=0,len=list.size();i<list;i++){
  s = new Sample();
  session.save(s);
  if(i%20==0){
    session.flush();
    session.clear();
  }
}

此表中的列是唯一列。

此列表中的某些记录与此表中的记录相同。

像这样:

列表:[&#39; a&#39;&#39; b&#39;,&#39; c&#39;] ...

表格:[&#39; a&#39;&#39; d&#39;&#39; e&#39;] ...

&#39;一个&#39;是重复的,所以这段代码不能说得好。

例外:don't flush the Session after an exception occurs

使用它太懒了:

String sql = 'insert ignore into xxxxx';
session.createSqlQuery().executeUpdate();

我该怎么办?请帮帮我~~~

0 个答案:

没有答案