調試三板斧
- 瀏覽器開發者工具(F12)— 網絡面板
- 操作頁面(點擊按鈕、提交表單、跳轉鏈接)。
- 觀察 Name/Path:請求 URL(如 /user/login、/api/order/list)。
- 觀察 Method:GET/POST/PUT/DELETE。
- 觀察 Status:200/404/500。
- 觀察 Request Payload / Form Data:前端發送的參數。
- 觀察 Response:後端返回的 JSON/HTML/錯誤信息。
→ **確定調用了哪個 Controller/Action、傳了什麼參數、返回什麼數據。**
- Eclipse 斷點調試 — 後端鏈路
- 在對應 Controller 方法、Service 方法、DAO 方法、SQL 構建處打**斷點**。
- Debug As → Debug on Server 啟動 Tomcat。
- 瀏覽器再次操作觸發請求。
- Eclipse 斷點命中,**Variables 面板**查看參數、局部變量、對象圖。
- Step Into (F5) / Step Over (F6) / Step Return (F7) 單步跟蹤調用棧。
- Display / Expressions 臨時執行代碼片段驗證邏輯。
→ **確定具體執行了哪些類、哪些方法、什麼順序、中間數據變化。**
- 日誌/鏈路追蹤 — 生產/壓測環境
- 接入 Logback + MDC 打印 traceId、spanId。
- 或接入 **SkyWalking / Pinpoint / Zipkin** 可視化調用拓撲。
→ **無法斷點時的唯一救命稻草。**
實戰操作步驟(Eclipse + Tomcat)
- 項目右鍵 → Debug As → Debug on Server(確保 Server 模式為 Debug)。
- 雙擊行號左側添加斷點(藍色圓點)。
- 瀏覽器操作觸發請求。
- Eclipse 切換到 Debug 視角,Debug 視圖**顯示線程棧帧。
- 右鍵線程 → Step Into/Over/Return。
- Variables** 面板展開對象查看字段。
- Breakpoints** 視圖管理條件斷點(如 user.getId() == 1001)。
- 控制台查看 SQL(配置
log4jdbc 或 MyBatis logImpl=STDOUT_LOGGING)。
常見新手誤區