步骤:
① 新建一个GlobalExceptionHandler, 使用@ControllerAdvice修饰;
② 创建一个方法, 使用@ExceptionHandler(value=Exception.class)修饰, 对异常进行拦截;
③ 在方法中判断:
- 若返回的是视图View, 则返回ModelAndView或者视图名
- 若返回String或者JSON, 则在方法上添加@ResponseBody注解;
具体代码:
package online.bendou.exception;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
@ControllerAdvice
public class GlobalExceptionHandler {
@ExceptionHandler(value=Exception.class)
@ResponseBody
public String exceptionHandler(){
/**
* 若返回的是视图view(模板引擎还没有学):
* 则代码如下:
* ModelAndView modelAndView = new ModelAndView();
* modelAndView.setViewName("error");
* return modeAndView;
*/
return "服务器繁忙,请稍后重试!";
}
}