SSM异常统一处理
Posted SmallCuteMonkey
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SSM异常统一处理相关的知识,希望对你有一定的参考价值。
@ExcepHandler异常局部处理的注解,只可以处理一个Controller的异常,不可以同时处理两个Conroller的异常。
@ControllerAdvice 异常全局处理的注解,里面加上注解**@ExceptionHandler(Exception.class)**,就可以处理全部的异常
ErrorController:
package com.zjj.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class ErrorController {
@RequestMapping("error")
@ResponseBody
public String sayHello(){
int i=1/0;
return "Runtime.....";
}
@ResponseBody
@ExceptionHandler(RuntimeException.class) //这个是局部异常处理,这里也可以写成RuntimeException.class
public String error1(){
return "Runtime.....";
}
}
ErrorController01:
package com.zjj.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@ResponseBody
public class ErrorController01 {
@RequestMapping("error1")
public String say(){
int i=1/0;
return "hello";
}
}
GlobalErrorController:
package com.zjj.controller;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
@ControllerAdvice//这个是全局错误处理的注解
public class GlobalErrorHandler {
@ResponseBody
@ExceptionHandler(Exception.class)
public String ErrorHandle(){
return "error";
}
}
以上是关于SSM异常统一处理的主要内容,如果未能解决你的问题,请参考以下文章
java.util.MissingResourceException: Can't find bundle for base name init, locale zh_CN问题的处理(代码片段