牛骨文教育服务平台(让学习变的简单)
博文笔记

关于session未能正常关闭造成界面假死的问题

创建时间:2015-06-10 投稿人: 浏览次数:136

                   最近在用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;

                      通过这样的方式就彻底解决了界面假死的问题! 

             

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。