我正在使用hibernate和spring,执行以下代码时出现此异常:
Session oSession = getSession();
try
{
oSession.setFlushMode(FlushMode.COMMIT);
getHibernateTemplate().delete(oProject);
oSession.flush();
bResult = true;
}
catch (Exception e)
{
bResult = false;
logger.error(e);
}
我已经阅读了一些关于休眠的会话管理,并且我预感这段代码的会话处理能力很差。有两个公开会议的原因可能是什么?Hibernate APIs 表示该getSession()
函数返回一个新的会话对象或一个现有的。在这种情况下,它从哪里获得现有的会话对象?如果它创建了一个新的会话对象,那么处理所涉及的集合仍然可以吗?
任何帮助将不胜感激。提前致谢!更多的权力堆栈溢出。