hibernate运行一段时候后出现假死现象
最近在维护一个外包遗留下的Hibernate+spring+spring mvc的一个项目,发现该项目运行一段时间后,发现APP请求后一直处于等待状态,直到请求超时,于是调试跟踪了一下,发现是操作数据库时一直没有返回,刚开始以为是数据库连接超时,但是后来想想,连接超时应该会报异常呀,而这个是没有报任何异常,程序走到执行SQL语句时就不往下走了,停了,出现假死现象一直没有返回,于是断定可能是操作数据库后连接没有关闭导致数据库连接池满了,但是后来查看代码,发现时DAO继承的是spring的HibernateDaoSupport,所以应该session的关闭都归spring来集中管理,代码不需要手动关闭,郁闷了一段时间,确定再去仔细看了DAO里面的代码,这次发现了一个很有问题的操作,代码里面直接用this.getSession()来操作数据而且没有手动关闭该session,而不是通过this.getHibernateTemplate().getSessionFactory().openSession()来操作数据库,后来查了一下发现如果用this.getSession()是需要手动关闭session的.于是,我在每次this.getSession(),操作数据库后把session关闭,运行了很久后,再也没有出现假死现象了。
分享到:
相关推荐
菜鸟少走弯路,快速运行第一个hibernate!祝你成功!
hibernate-entitymanager-5.4.24.Final.jarhibernate-entitymanager-5.4.24.Final.jar
hibernate一对一的关系hibernate一对一的关系hibernate一对一的关系hibernate一对一的关系hibernate一对一的关系hibernate一对一的关系
解决hibernate在MyeclipseH不能正常运行问题
hibernate框架一对一测试案例,第四篇,使用于新手
hibernate第一个hibernate
hibernate一对一实例
hibernate中处理大字段 网上收集的文档
Hibernate双向一对一关联映射(注解版)
免积分的资源,希望可以帮到大家,这是我学习hibernate时候,自己写的代码。希望大家学业有成。
hibernate3hibernate3hibernate3hibernate3hibernate3hibernate3hibernate3hibernate3
Hibernate一对一,一对多,多对多实例
本人也是初学者,初次建造hibernate开发环境,幸运的是成功了,现在那出来分享下。内有hibernate运行说需的jar包(asm.zip, cglib-2.1_2jboss.jar, dom4j-1.6.1.jar ,hibernate3.jar, jta.jar)
这是hibernate 的超级简单的例子,只有一个持久化对象和一个辅助类,还有一个测试类,对于初学者很有参考价值
最近看了CSDN上几个Hibernate开发的租房系统 不是版本太老就是不能运行 闹心了一星期 自己终于成功运行 另附上Oracle开发脚本 注意:一 MyEclipse8的可直接加载 MyEclipse2013需要系统转换 不然会缺少文件 二 ...
加入了hibernate框架的javaWeb项目,里面包含了一对多的典型配置
hibernate tools源码运行修改需要的jar 源码下载地址是http://anonsvn.jboss.org/repos/hibernate/tags/TOOLS_3_2_4_GA/
hibernate一对一外键关系,很适合入门者学习.
struts + DAO + Hibernate可直接运行程序
个人的很详细的Hibernate一对一映射配置详解,对初学者有帮助!