# JSP

如何debug JSP頁

其實JSP會被轉成java 去執行 所以可以用try .. catch 把整個JSP頁包起來 去看問題在哪裡

原檔名 abc.jsp > abc\_jsp.java

## 跳轉頁面

參考資料:(<https://ithelp.ithome.com.tw/articles/10185109>)

書裡針對這兩個特性做了一個有趣的說明 sendRedirect =>就像客戶打給你,你叫客戶去找其他的廠商(所以客戶還要再打一通電話) forward =>就像客戶找你,你交給你同事處理(對客戶來說只有打一通電話)

### forward(request, response)

定義在 RequestDispatcher 的介面，由 request.getRequestDispatcher 呼叫 內部轉址, URL 不會顯示程式名稱 因為是內部轉址，可以透過 setAttribute 傳遞參數 效率較高 適用於權限管理轉頁時使用

### sendRedirect

定義在 HttpServletResponse 直接外部呼叫一支程式，會顯露程式名稱 定義在 HttpServletResponse 效率較低 (因為 client 會再 request 一次) 適用於跳至外部網站或回主畫面使用

response.sendRedirect(url) 去做跳轉

只能GET

要用POST 並且傳遞參數，好像只能用 Form 去做

參考資料:用Form POST的方式(<https://blog.csdn.net/u012377333/article/details/50395835>)
