学习心得 - JSP中处理异常以及一些高级主题

发表于:2007-07-04来源:作者:点击数: 标签:
[这个贴子最后由TonyDeng在 2004/10/02 05:49pm 编辑] 2004-9-30 星期四 晴 处理异常 1. 运行时异常 答:1) 一个程序运行时重获的错误; 2) 能被一固有的异常对象引用所使用; 3) 可以利用异常引用创建或产生一个JSP页面显示异常信息给用户。 2. 创建一个异常
[这个贴子最后由TonyDeng在 2004/10/02 05:49pm 编辑]

2004-9-30      星期四      晴

处理异常

1.  运行时异常
答:1) 一个程序运行时重获的错误;
   2) 能被一固有的异常对象引用所使用;
   3) 可以利用异常引用创建或产生一个JSP页面显示异常信息给用户。

2.  创建一个异常跟踪方案
答:1) 在每一个JSP页面,包含要创建的异常页面名称;
      <%@page import="numberguess.NumberGuessBean" errorPage="error.jsp"%>
   2) 创建一个异常页面;
      <%@page isErrorPage="true"%>

3.  JSP页面中的异常处理
答:1) <%=exception.toString()%>       打印异常名称;
   2) <%exception.printStackTrace();%>打印当前错误流中所有错误的列表;
   3) <%=exception.getMessage()%>     打印错误的详细描述信息

更高级的主题

1.  JSP中黙认的内在对象
答:名称         类型                                     注释和范围
   request      javax.servlet.http.HttpServletRequest    request
   response     javax.servlet.http.HttpServletResponse   response
   pageContext  javax.servlet.jsp.PageContext            page
   session      javax.servlet.http.HttpSession           session
   application  javax.servlet.ServletContext             ServletContext
   out          javax.servlet.jsp.JspWriter              output stream
   config       javax.servlet.ServletConfig              ServletConfig
   page         javax.lang.Object                        page
   Exception    java.lang.Throwable                      page

2.  默认对象之请求(request)
答:封装了来自客户端的请求:
   方法:1) getCookies: 取得Cookie数组;
         2) getMethod: 返回请求形成的方式(GET/POST);
         3) getParameterNames: 返回FORM中对象名称的枚举;
         4) getParameter:返回指定名称的对象值;
         5) getParametervalues: 返回指定名称的对象值数组;
         6) setAttribute: 设置属性;
         7) getAttribute: 返回属性值;
         getAttributeNames: 返回属性名称的枚举

3.  默认对象之out
答:JSPWriter的一个实例, 用于发送响应给客户端
   方法:1) print(String)/println(String)
         2) print(int)/println(int)
         3) flush()

4.  默认对象之exception
答:1) 用于异常对象的异常实例;
   2) 异常页面在page指令中存在属性isErrorPage="true";
   3) 方法:getMessage()/printStackTrace()/toString()

5.  默认对象之session
答:1) HttpSession的一个实例, 用于在一个session中保持状态
   2) 方法:getAttribute()
            setAttribute()
            removeAttribute()
            getAttributeNames()

6.  默认对象之application
答:1) ServletContext一个实例,用于保持application的状态
   2) 方法:getAttribute()
            setAttribute()
            getInitParameter()
            getServletInfo()
   3) application的作用域比session大得多,一个session和一个client联系, 而application保持了用于所有客

户端的状态

原文转自:http://www.ltesting.net