今天发现  发现查询连续四次就出现页面一直加载现象(查询调用hibernate 默认的查询方法)但没有报错。重启TOMCAT 又恢复正常。但是只要连续查询 在第四次必出现页面一直加载 然后连其他的所有涉及数据库操作的页面都无法操作。 这是为什么?? 配置文件有问题?这是不是死锁?如果是数据库死锁重启下TOMCAT为什么又正常了。是阻塞吗?? 本人对hibernate 了解不是很深 不知道怎么办?(另外 附加一点 查询的这张表关联了另外多张表 难道跟这个有关)。请大家帮帮看看是什么问题。因为调用查询方法是hibernate 自动生成的查询方法 就不贴代码了。我也尝试自己手动写了一个查询方法  结果都是一样 都在第四次查询时出现一直加载现象。后来调试程序发现 代码在运行到查询方法就停了  控制台也没有错误信息。急啊!!! 没有报错也无从下手!

解决方案 »

  1.   

    你没debug一下,看到查询里的哪一步死的。怎么的你也得把查询语句发出来才知道哪错了啊
      

  2.   

    可以调试一下,看下哪里出错。可能是 *.hbm.xml 里面的延迟加载与即时加载 配置问题,你可以试一下
      

  3.   

    检查下transaction session 的操作
      

  4.   

    你是用eclipse调试的吗?
    好像是得加入hibernate的dtd文件引用.
      

  5.   

    在eclipse中window->xml->DTD Files->Templates->new
    name及其它信息,再试试~.
      

  6.   

    另外 附加一点 查询的这张表关联了另外多张表 难道跟这个有关很好奇地想看看你的hbm.xml文件怎么配置的,如果你配置了子查询策略的话,会出现n+1问题,这样在你查询了多次以后就会出现效率低下,导致现在这个结果。
      

  7.   

    出现这样的问题,最大的可能性就是session没有关。
    在dao里,查询结束的时候session要关闭的。
      

  8.   

    我试了下关闭SESSION  但是还是只能查询8次  第9次必出现假死
      

  9.   

    这个问题我也碰到过,就是session没关闭,配置连接池就不会出现这样的问题了!