-
简单的异常项目示例(除0异常做演示),如下是controller层的代码
@RestController public class ExceptionController { @RequestMapping("getnumber") public String getNumer(int i){ int j = 2; int result = j/i; return "result" + result; } }
-
当传入参数i==0的时候,以上代码是会抛异常的;
-
捕获代码如下
@ControllerAdvice(basePackages = "com.example.redisdemo.controller") public class GlobalExceptionHandler { @ExceptionHandler(RuntimeException.class) @ResponseBody public Map<String, Object> result(){ Map<String, Object> map = new HashMap<>(); map.put("errorCode",500); map.put("errorMessage","异常捕获"); return map; } }
@ControllerAdvice中指定的包一般为controller;
@ExceptionHandler表示捕获异常的种类;
@ResponseBody表示捕获异常过后返回的是json格式的数据,当然也可以返回要跳转的页面; -
访问结果如下图所示
-
备注:一般实际项目中,会将项目运行的异常记录在日志中。
6.SpringBoot之异常的全局捕获
最新推荐文章于 2020-08-28 12:01:44 发布