zoukankan      html  css  js  c++  java
  • SpringMVC的异常

    @ExceptionHandler(value={ArithmeticException.class})
        public ModelAndView ex1(Exception ex){
            ModelAndView mv=new ModelAndView();
            mv.setViewName("error");
            mv.addObject("ex", ex);
            return mv;        
        }

    在出现异常的类中添加异常的方法。

    一、注解的时候不在使用@RequestMapping(),而是使用@ExceptionHandler()进行注解。

           @ExceptionHandler()的参数是:

      value= {  ArithmeticException.class},是一个数组,可以添加多个异常的说明

    二、这时候如果想向前天传递参数就不能在方法的参数中使用Map,而是改用

      ModelAndView。

    三。如果在本类中写了多个异常的方法,比如写了

    @ExceptionHandler(value={Exception.class})
        public ModelAndView ex2(Exception ex){
            ModelAndView mv=new ModelAndView();
            System.out.println(ex);
            mv.setViewName("error");
            mv.addObject("ex", ex);
            return mv;
            
        }
        
        @ExceptionHandler(value={ArithmeticException.class})
        public ModelAndView ex1(Exception ex){
            ModelAndView mv=new ModelAndView();
            System.out.println(ex);
            mv.setViewName("error");
            mv.addObject("ex", ex);
            return mv;        
        }

    这时如果出现了ArithmeticException异常,会执行最接近异常的异常方法,也就是会执行ex1的

    异常方法。

    三、全局异常处理

      如果想定义一个监视所有类的异常的方法

      再创建一个类,类的上方不再是@Controller注解,而是使用@ControllerAdvice进行注解,

      然后写一个异常的方法 ,用@ExceptionHandler进行注解。

      

    @ControllerAdvice
    public class Exception1 {
        @ExceptionHandler(value={ArithmeticException.class})
        public ModelAndView ex1(Exception ex){
            ModelAndView mv=new ModelAndView();
            mv.setViewName("error");
            mv.addObject("ex", ex);
            return mv;
            
            
        }
    
    }
  • 相关阅读:
    2017年陕西省网络空间安全技术大赛WP
    XDCTF2014 Writeup
    TensorFlow入门测试程序
    python计算器
    CentOS安装crontab及使用方法
    在Linux 双机下自己手动实现浮动ip技术
    CentOS 7下安装配置FTP
    encodeURI 解码 编码
    jquery 消息提醒插件 toastmessage
    搭通自己的电脑与GitHub的传输通道
  • 原文地址:https://www.cnblogs.com/xuesheng/p/7426399.html
Copyright © 2011-2022 走看看