web框架中,有很多异常需要处理,比如业务异常,权限不足等。一般都是使用try...catch进行异常捕捉处理,但是在实际项目中对业务模块进行异常捕捉,会造成代码重复和繁杂。

解决办法:

设立一个全局异常来对框架的所有异常进行统一处理。在可能发生异常的方法throw抛给自定义的异常控制器,然后由全局异常处理器对异常进行统一处理。这样,控制器中的方法可以简洁化。

 

全局异常处理器:使用@ControllerAdvice注解
package com.association.framework.web.exception; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import
org.springframework.web.bind.annotation.ExceptionHandler; import
org.springframework.web.bind.annotation.RestControllerAdvice; import
com.ruoyi.common.core.domain.AjaxResult; import
com.ruoyi.common.exception.LoginException; /** * 全局异常处理器 * */
@RestControllerAdvice public class GlobalExceptionHandler { private static
final Logger log = LoggerFactory.getLogger(GlobalExceptionHandler.class); /** *
登录异常 */ @ExceptionHandler(LoginException.class) public AjaxResult
loginException(LoginException e) { log.error(e.getMessage(), e); return
AjaxResult.error(e.getMessage()); } }
 

技术
©2019-2020 Toolsou All rights reserved,
华为在线编程练习(试题加答案)C++标准库Jsp+Ajax+Servlet+Mysql实现增删改查(一)免费下载文档:给你介绍几个实用的免费下载网址微软翻译、Office现开始支持因纽特语Unity 场景异步加载(加载界面的实现)随机森林篇 R语言实现Java基础知识之笔记总结分享(超详细)PYTHON入门期末复习汇总vue组件页面高度根据屏幕大小自适应