MVC模式下,?JSP往往只作為頁面顯示,與業務相關的數據庫操作都是在后臺的JavaBean(業務邏輯層)執行,處理完畢之后再跳轉某個jsp顯示頁面。這種設置框架,實現了MVC結構,使得整個系統的維護難度大大降低。
?????????? 在實際工作中,JavaBean(業務邏輯層) 如果出現 Exception 時,則JSP頁面,會出現不友好的頁面,???影響用戶對該產品的依賴程度,遭到客戶的投訴。因此,我們需要一種有效的方法進行錯誤處理。一般是, 將所有Exception的出錯內容拋出到web頁面,讓使用用戶立即有錯誤發生,并可以及時將該出錯內容提交給開發人員定位出錯原因。
(1)在業務邏輯層:
?????
???? public void?? 方法 (..)throws Exception{
?????????............
??????????????? throw new Exception("該專題已經關聯圖書,不能下架!!!");
??????? .............
}
(2)jsp 頁面執行業務邏輯??
???
?? <%@page contentType="text/html; charset=GBK" errorPage="error.jsp"%>
????.................
??? ................
?
(3)例如指定 error.sjp?? 為錯誤頁面
<
%@page
contentType="text/html; charset=GBK" isErrorPage="true" %>
<%@ page import="java.io.PrintWriter" %>
<html>
? <head>
??? <title>錯誤頁面</title>
? </head>
?
? <body>
?? <h2>errorPage 的范例程序</h2>
?<p>ErrorPage.jsp 錯誤產生:<I><%= exception %></I></p><br>
?<pre>
?問題如下:<%=?exception.getMessage()?%>? //輸出錯誤的原因
??? </pre>
? </body>
</html>