1. 必要性
    1. 出现异常并不可怕,可怕的是出现了异常,你却不知道,也没有进行异常处理
    2. 异常的处理是对用户友好的一个重要点。用和看不懂你的500和404,你应该返回一个系统繁忙或者找不到页面的漂亮的页面给他们。
  2. 实现方法
    1. 要处理异常的话,需要实现HandlerExceptionResolver这个接口类,并且重写resolveException方法,在resolveException方法中处理自己的异常逻辑。
  3. 全局处理器
    1. /spring-shiro-training/src/main/java/com/wangzhixuan/commons/scan/ExceptionResolver.java
    2. 继承HandlerExceptionResolver,并添加注解@Component交给Spring处理
    3. resolveException方法里面需要做的事情
      1. 使用log4j2记录异常,把异常信息记录到日志里面,方便查看日志找出问题
      2. 判断方法是否是异步请求
      3. 异步请求应该返回json数据并弹窗提示,同步请求返回到错误页面
  4. web.xml
    1. <error-page> <error-code>404</error-code> <location>/WEB-INF/views/error/404.jsp</location> </error-page> <error-page> <error-code>500</error-code> <location>/WEB-INF/views/error/500.jsp</location> </error-page>
    2. web项目的简单异常指引,一般来说有了异常处理之后可以不配这这个。
  5. 简单说说日志
    1. System.out.println()是指输出信息到控制台,不会记录到日志文件里面
    2. 在生成环境中,一般每天会生成一个日志文件,记录系统的运行信息