详解如何在spring中创建全局异常处理器
全局异常处理器在实际项目开发中是一个很重要的工具;对保证代码的正常运行有很重要的作用。当然这样也可以使得用户体验更好,总不可能让用户看到我们后端密密麻麻的报错信息吧。
下面来讲一下如何创建一个全局异常处理器:
1.创建一个全局异常处理类:并添加@RestControllerAdvice注解
2.在类中创建方法用于捕获异常:在方法上添加注解:@ExceptionHandler
方法中的形参就是异常的类型。
下面是对注解的简单介绍以及完整的代码:
@RestControllerAdvice:
该注解 由@ControllerAdvice、@ResponseBody组成
而@ControllerAdvice继承了@Component
@RestControllerAdvice本质上是个Component
@ExceptionHandler:用于指定异常处理方法。当与@RestControllerAdvice配合使用时,用于全局处理控制器里的异常。
import com.sky.exception.BaseException; import com.sky.result.Result; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.ExceptionHandler; import org.springframework.web.bind.annotation.RestControllerAdvice; /** * 全局异常处理器,处理项目中抛出的业务异常 */ @RestControllerAdvice @Slf4j public class GlobalExceptionHandler { /** * 捕获业务异常 * @param ex * @return */ @ExceptionHandler public Result exceptionHandler(BaseException ex){ log.error("异常信息:{}", ex.getMessage()); return Result.error(ex.getMessage()); } }
这样当代码运行出现对应的异常的时候,就会被捕获,并且执行方法中的代码。
到此这篇关于详解如何在spring中创建全局异常处理器的文章就介绍到这了,更多相关spring创建全局异常处理器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
文件上传SpringBoot后端MultipartFile参数报空问题的解决办法
这篇文章主要介绍了文件上传SpringBoot后端MultipartFile参数报空问题的解决办法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2020-11-11mybatis resultMap没有全部对应的字段处理方式
这篇文章主要介绍了mybatis resultMap没有全部对应的字段处理方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-03-03
最新评论