hibernate3 Transaction not successfully started报错求助Session session = getSession();session.beginTransaction();session.save(object);session.getTransaction().commit();正常,不报错_____________________________分割线________________________
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 04:46:12
hibernate3 Transaction not successfully started报错求助Session session = getSession();session.beginTransaction();session.save(object);session.getTransaction().commit();正常,不报错_____________________________分割线________________________
hibernate3 Transaction not successfully started报错求助
Session session = getSession();
session.beginTransaction();
session.save(object);
session.getTransaction().commit();
正常,不报错
_____________________________分割线______________________________
getSession().beginTransaction();
getSession().save(object);
getSession().getTransaction().commit();
这样就报错了,唯一的区别就是上面多了一个
Session session = getSession();这个而已……
hibernate3 Transaction not successfully started报错求助Session session = getSession();session.beginTransaction();session.save(object);session.getTransaction().commit();正常,不报错_____________________________分割线________________________
以我个人的推断的话,因为你getSession(); hibernate都会去重新new 一个session对象出来 也就是说getSession().beginTransaction(); 这个session开启了事物 session.beginTransaction();这个又是一个新的session 这个session保存了object对象 session.getTransaction().commit();这个session 提交事务.这个事务不是又一个session开启 执行语句 提交事务 最终导致报错.从报的错误 ransaction not successfully started 致可以读出,是说你的事务没有成功的开启,据我目测,应该是最后提交事务的那一句话报错,你把最后一句话
getSession().getTransaction().commit();
删了.执行一遍.如果说不报错了.就能证明,我上面说的;当然,这只是我的推论而已.不过你自己可以测试一下