后台代碼報錯:看控制台日志,找到控制台中自己的寫的類對應的錯誤代碼的那一行:(有些信息是java底層的信息,看不大懂,不用看,看自己寫的代碼)
然后分析,具體是在類中對應的方法里面打個斷點。用Eclipse的debug模式啟動,調到斷點的那一行,具體問題邊跟蹤代碼便分析。比如空指針最常見的異常,
假如我們正在做增刪改操作,假如做根據id刪除的功能時報錯,看你根據id查找的對象是否為空,然后推理是否id為空,是否id參數沒有傳遞成功等等,一步一步
的找到問題的原因。
如果后台不報錯,但是前台頁面仍然打不開,或者報錯,考慮不是后台代碼的問題,而是前台頁面代碼的問題,用瀏覽器的debug,例如火狐插件F12,在前台代碼中寫debugger,進行調試,也可以安裝httpwatch來分析數據。
使用調試,可以解決大部分的問題。但有些問題就需要經驗來解決:
1.瀏覽器兼容性問題:
在開發“客戶群成員關系圖”功能時,用到了關系圖組件MxClient庫,在開發過程中,發現該組件在IE8及IE9下有兼容性問題:不能展示圖形節點的背景 圖及樣式、不能展示關系圖之間的連接線。在IE8兼容模式下、在IE6及IE7下都能正常展示,在IE8標准模式及IE9標准模式下,都不能正常展示。
解決方法:在排查的過程中,發現同樣的關系圖展示代碼,在另外的功能模塊,能夠正常的展示關系圖數據,說明代碼沒有問題,在經過多次的排查和代碼的比較,最終發現原因是在jsp文件當中,“缺少了文檔類型定義”引起的。在在JSP頁面文件的最前面,增加文檔類型定義聲明,增加這行代碼:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">,經驗證,關系圖組件庫,支持文檔類型定義“Strict、Transitional、Frameset”中的“Transitional、Frameset”,不支持“Strict”。HTML 4.01 規定了三種文檔類型:Strict、Transitional 以及 Frameset。
2.壓力測后出出現連接池不足:解決方法:調整was參數,看代碼中是否有鏈接未關閉的情況。
3.內存泄露:解決方法:分析HEAPDUMP文件,找出問題代碼並解決。
4.部分功能場景響應時間太慢,例如客戶對私對公基本信息,由於字段多,100多個字段,頁面加載很慢,需要關聯的表很多,導致加載數據較慢。