当前位置: 代码迷 >> 综合 >> springmvc的异常处理使用
  详细解决方案

springmvc的异常处理使用

热度:76   发布时间:2023-10-26 09:04:21.0

在同一个controller中配置下面这个方法,在方法加上@ExceptionHandler注解,参数是一个异常类的数组,其中包含了可以处理的异常类型

如果行要获取异常信息,可以在参数中加上异常参数

如果想要将异常信息传到页面上,用放到map中是行不通的,应为这个用@ExceptionHandler注解是不允许传入map的

可以将异常信息放到ModelAndView对象中

@ExceptionHandler({ ArithmeticException.class })public ModelAndView handlerArithmeticException(ArithmeticException ex) {ModelAndView mv = new ModelAndView("error");mv.addObject("exception", ex);System.out.println("出现异常了" + ex);return mv;}

感觉在将异常信息放到controller中好像不太好,那么可以单独写一个异常处理的controller

具体代码如下,不需要配置什么东西著需要加上@controllerAdvice注解,其中的方法和上面的是一样的写法:

@ControllerAdvice
public class HandlerException {@ExceptionHandler({ArithmeticException.class})public ModelAndView handlerArithmeticException(ArithmeticException ex) {ModelAndView mv = new ModelAndView("error");mv.addObject("exception",ex);System.out.println("-->出现异常了" + ex);return mv;}}

  相关解决方案