JSP其实也是Servlet的子类,因为间接继承了Servlet。
JSP的Exception对象使用场景:
比如用户在访问页面的时候,如果在执行程序的过程中报错,其实不应该把错误信息直接显示在页面,暴露给用户看的,此时就可以设置一个error页面,只要报错了,就跳转到该页面。
使用方法:
方法一:
- 步骤一:在page指令上设置错误页面的路径:errorPage
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" errorPage="/error.jsp"%>
注意:这里的errorPage只是请求转发,是请求重定向,网址不会发生跳转,对用户来说是看不出地址变化的。所以错误页面路径跟request的depatch一样,是相对于本应用下面的路径 - 步骤二:需要在错误页面的page指令上设置属性:isErrorPage="true"
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" isErrorPage="true"%>
只有这样才能调用exception对象,然后通过对象获取错误信息,比如exception.getMessage()就是用来获取错误信息的
方法二:在web.xml中设置
<error-page>
<error-code>404</error-code>
<location>/error.jsp</location>
</error-page>
error-code就是那些404,500之类的数字,当然还有一种是<exception-type></exception-type>,这个是错误类型,比如说什么空指针异常、类型转换异常。<exception-type>java.lang.ArithmeticException</exception-type>算数异常