springmvc笔记 - 异常处理

异常处理:

  它是什么?

      答: 是用来处理程序运行时抛出的异常.

  为什么要用它?

      答: 可以用于在站点后台运行时,来捕获随时发生的异常问题。并将异常情况抛给用户,方便让用户明白此时的异常问题,而并不是让用户看到比如 404等异常错误。

  怎么使用它?

      使用步骤:

           1. 新建一个类去继承Exception类,通过有参构造将异常信息传到该类的变量Message中(代码如下)。

public class ItemsException extends Exception {

    private String Message;

    public ItemsException(String msg){
        super(msg);
        this.Message=msg;
    }

    @Override
    public String getMessage() {
        return Message;
    }

    public void setMessage(String message) {
        Message = message;
    }

}

 

           2.新建类去实现HandlerExceptionResolver,重写其中的resolveException方法(代码如下)。

           
public class ItemsExceptionResolver implements HandlerExceptionResolver {

    @Override
    public ModelAndView resolveException(HttpServletRequest httpServletRequest,
                                         HttpServletResponse httpServletResponse, Object o, Exception e) {
        String message = null;
//        if (e instanceof ItemsException){
//            message = ((ItemsException)e).getMessage();
//        }else{
//            message = "未知错误";
//        }
        ItemsException itemsException=null;

        if (e instanceof ItemsException){
            itemsException = (ItemsException) e;
        }else{
            itemsException=new ItemsException("未知错误");
        }

        String messages = itemsException.getMessage();

        ModelAndView modelAndView=new ModelAndView();

        //返回错误信息
        modelAndView.addObject("message",messages);
        //设置返回页面
        modelAndView.setViewName("/error.jsp");

        return modelAndView;
    }
}

 

 
 
           3.在springmvc.xml中配置全局异常处理器,只需要配置bean就可以了

 


 

 注:学习笔记,若有问题之处请留言指正,感激不尽!




   

posted @ 2018-07-25 15:38  花裤兜派大星  阅读(86)  评论(0)    收藏  举报