最近我做了一个上传下载模块。很快就做完了,感觉还可以吧!
就是和别人的模块合起来就完了,点不了两三下就页面不动了,后台tomcat看起来象死了一样也没有什么反应!
问题:为什么自己单独跑好着呢,合起来就不行了?
解决方案:
1、怀疑filter。去掉filter,问题依旧。(排除)
2、怀疑listener。去掉listener,工程整个都死掉了,跑不了(总之很多东西都在这里,都是工程里用的)。(挂起)
3、单步跟踪。设了很多断点,跟了一会跟丢了(进了很深的底层,出不来了)。
4、打日志。没有用。感觉什么都好着呢。
5、会不会多线程,后台死锁。找了一个测试工具JProfiler,看不出来问题,也没有死锁。
天天哭呀!~~~
最后解决问题:
经:会不会是数据库死锁!
再次运行程序——死了——打开每张表(看是否有打不开的,是否发生了死锁)。结果OK,都打开了!(排除)
最后一招:每一行代码下都打印东西。终于看到了有一个service的方法执行不到(第一次可以)。在该方法中的每一行代码下继续打东西。又看到一个Dao层的方法不执行。继续。这样一层一层。终于问题浮出水面——得不到连接。因为用的是DataSource,所以忘记.close();晕!~~~加上!
问题终于解决了!一切恢复正常!
最后结论:就是一头猪!~~~