我正在使用 Spring ORM 支持在我的应用程序中实现一些 RESTFul Web 服务。应用程序在几个小时后停止响应。我怀疑资源泄漏。
我有类似这样的代码:
protected Session getSession() {
Session session = null;
try {
session = hibernateTemplate.getSessionFactory().getCurrentSession();
} catch (Exception ex) {}
if (session == null) {
session = hibernateTemplate.getSessionFactory().openSession();
}
return session;
}
.....
public void someMethod(){
Session session = null;
try {
session = getSession();
} catch (Exception ex) {}
query = session.createSQLQuery(queryString);
List<Object[]> myObjs= (List<Object[]>) query.list();
....
....
Query query2 = session.createSQLQuery(queryString2);
BigInteger count = (BigInteger) query2.uniqueResult();
}
catch(Exception e){}
我正在重用会话对象来执行查询以及 query2。重用会话对象会导致资源泄漏吗?