日期:2014-05-20  浏览次数:20841 次

hibernate 查询时出现类似死锁现象 这是为什么 ??在线等答案
今天发现 发现查询连续四次就出现页面一直加载现象(查询调用hibernate 默认的查询方法)但没有报错。重启TOMCAT 又恢复正常。但是只要连续查询 在第四次必出现页面一直加载 然后连其他的所有涉及数据库操作的页面都无法操作。 这是为什么?? 配置文件有问题?这是不是死锁?如果是数据库死锁重启下TOMCAT为什么又正常了。是阻塞吗?? 本人对hibernate 了解不是很深 不知道怎么办?(另外 附加一点 查询的这张表关联了另外多张表 难道跟这个有关)。请大家帮帮看看是什么问题。

因为调用查询方法是hibernate 自动生成的查询方法 就不贴代码了。我也尝试自己手动写了一个查询方法 结果都是一样 都在第四次查询时出现一直加载现象。后来调试程序发现 代码在运行到查询方法就停了 控制台也没有错误信息。急啊!!! 没有报错也无从下手!

------解决方案--------------------
你没debug一下,看到查询里的哪一步死的。怎么的你也得把查询语句发出来才知道哪错了啊
------解决方案--------------------
你是用eclipse调试的吗?
好像是得加入hibernate的dtd文件引用.
------解决方案--------------------
在eclipse中window->xml->DTD Files->Templates->new
name及其它信息,再试试~.
------解决方案--------------------
另外 附加一点 查询的这张表关联了另外多张表 难道跟这个有关

很好奇地想看看你的hbm.xml文件怎么配置的,如果你配置了子查询策略的话,会出现n+1问题,这样在你查询了多次以后就会出现效率低下,导致现在这个结果。
------解决方案--------------------
出现这样的问题,最大的可能性就是session没有关。
在dao里,查询结束的时候session要关闭的。