以下是我的代码
@SuppressWarnings("unchecked")
protected List<String> executeTestQuery(final String query)
{
List<String> ret;
Session session = factory.openSession();
try
{
ret = session.createQuery(query).list();//HANGS
}
finally
{
session.flush();
session.close();
}
return ret;
}
@SuppressWarnings("unchecked")
protected List<String> executeTestQuery(final String query)
{
List<String> ret;
Session session = factory.openSession();
try
{
ret = session.createQuery(query).list();//HANGS
}
finally
{
session.flush();
session.close();
}
return ret;
}
上述方法是从每种方法调用的常用方法,在某些情况下也是递归调用的。几次运行后,Hibernate挂起了上述点。
我甚至添加了
config.setProperty(Environment.C3P0_MAX_SIZE, "100");
仍然没用
对上述问题的任何建议都会有很大帮助。
答案 0 :(得分:2)
Thanx伙伴们为您提供帮助。最终问题得到了解决。问题与上述功能无关。问题在于调用函数,它的会话永远不会被关闭.session.flush和session.close解决了这个问题。
答案 1 :(得分:0)
尝试使用SessionFactory的getCurrentSession()。