刚开始用csdn博客,我觉得记录下出现的错误是一个不错的选择,以便日后出现同样错误时忘记。
今天在做项目时,访问网页出现500错误错误:
可以清楚的看到错误原因是session closed。
检查dao的代码发现在finally里面关掉了session,由于使用hibernate工具类获取到session,关闭session导致下一次操作数据库时报错,去掉finally错误解决。
错误代码如下:
Session session = null;
WebAccount account = null;
Transaction tx = null;
try {
session = HibernateUtils.getSession();
tx = session.beginTransaction();
Query query = session.createQuery("from WebAccount where username=?");
query.setParameter(0, username);
account = (WebAccount) query.uniqueResult();
} catch (HibernateException e) {
tx.rollback();
e.printStackTrace();
} finally {
session.close();
}