我是Hibernate的新手。我的项目需要以下场景。
例如,我插入了20个类TestHBDemo
的记录数据。
hbsession = HibernateUtil.getCurrentSession();
tx = hbsession.beginTransaction();
for(int index = 0; index < 20; ++index){
TestHBDemo obj = new TestHBDemo();
//setting data
hbsession.save(obj);
}
tx.commit();
如何通过省略中间记录
仅插入1 - 10和15 - 20条记录hbsession = HibernateUtil.getCurrentSession();
tx = hbsession.beginTransaction();
for(int index = 0; index < 20; ++index){
TestHBDemo obj = new TestHBDemo();
//setting data
hbsession.save(obj);
if(somecondition)
// setting save points
}
//omitting unnecessary insertions
tx.commit();
请优先在hibernate中提供解决方案,而不是使用javax.sql。
感谢.....
答案 0 :(得分:-1)
我是通过使用以下代码实现的:
hbsession = HibernateUtil.getCurrentSession();
tx = hbsession.beginTransaction();
for(int index = 0; index < 20; ++index){
TestHBDemo obj = new TestHBDemo();
//setting data
hbsession.save(d5campaingObj);
if(index == 9){
hbsession.flush();
hbsession.clear();
}
if(index == 14){
hbsession.clear();
}
}
tx.commit();
但我在等待专家的更好方法。 感谢....
答案 1 :(得分:-1)
hbsession = HibernateUtil.getCurrentSession();
tx = hbsession.beginTransaction();
for(int index = 0; index < 20; ++index){
TestHBDemo obj = new TestHBDemo();
//setting data
**if(index>10 && inxex<15)
continue**;
hbsession.save(obj);
// setting save points
}
tx.commit();