Session挂起

异常信息:

toString() unavailable - no suspended threads

使用Spring管理 ,在使用hibernate时使用如下语句
Session session =getHibernateTemplate().getSessionFactory().openSession();
Query queryObject = session.createQuery(queryString);
查询数据库

查询结束时 一定要加上
releaseSession(session);
这条语句,已及时关掉session!
要不然会报线程挂起的错误!

若使用

Session session =getHibernateTemplate().getSessionFactory().getCurrentSession()

从spring管理的sessionFactory中创建一个绑定线程的session。spring会根据该线程的执行情况来自动判断是关闭session还是延迟关闭。这样做可以避免手动的管理实务,同时一个线程最多开启和关闭一次session又可以提高程序的性能。

原文地址:https://www.cnblogs.com/ylhssn/p/5179325.html