用Hibernate插入大量数据
public?int?save(List?transientInstances,?int?commitNum)?{
?????????log.debug("saving?larger?transientInstances");
?????????Transaction?tx?=?null;
?????????Session?session?=?getSession();
?????????try?{
?????????????tx?=?session.beginTransaction();
?????????????int?i?=?0;
?????????????for?(Object?transientInstance?:?transientInstances)?{
?????????????????session.save(transientInstance);
????????????????i++;
????????????????if?(i?==?commitNum)?{
????????????????????tx.commit();
????????????????????log.debug("save?"?+?commitNum?+?"data?successful");
????????????????????i?=?0;
????????????????????session.flush();?session.clear();?
????????????????????tx?=?session.beginTransaction();
????????????????}
????????????}
????????????if?(i?!=?0)?{
????????????????tx.commit();
????????????????session.flush();?session.clear();?
????????????}
????????????//?session.
????????????log.debug("save?larger?successful");
???????????return?0;
?????}?catch?(Exception?re)?{
???????????log.error("save?failed",?re);
???????????if?(tx?!=?null?&&?tx.isActive())
???????????????tx.rollback();
????????return?-1;
????????}
????}