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>