关于session未能正常关闭造成界面假死的问题
最近在用SSH三大框架研究一个项目,发现在分页的时候每点击七次界面就会假死,一直处于等待状态,界面也不能进行刷新。
后来自己想了想,肯定是因为Session没能正常关闭造成的,后来百度也说是这个问题。
然后试图手动关闭session 发现通过this.getSession().close();这样的方式也不行。
通过查API最终发现releaseSession(session)这个方法;releaseSession会关闭由当前DAO的SessionFactory创建的Hibernate Session。
通过注解的方式实现 当前类继承HibernateDaoSupport
@Resource(name="sessionFactory") public void setSupportSessionFactory(SessionFactory sessionFactory) { super.setSessionFactory(sessionFactory); }
Session session=getHibernateTemplate().getSessionFactory().openSession(); Query q= session.createQuery(hql); super.releaseSession(session); return xx;
通过这样的方式就彻底解决了界面假死的问题!
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: Unity3D适配安卓时的那些坑
- 下一篇: 实现单用户登录的原理和实践 java