首页 > 其他分享 >全局异常处理器的简单实现

全局异常处理器的简单实现

时间:2023-01-16 16:37:21浏览次数:35  
标签:SQLIntegrityConstraintViolationException split getMessage ex error 全局 异常 class 

入门案例:

@Slf4j
@RestControllerAdvice(annotations = {RestController.class, Controller.class})
public class GlobalExceptionHandler {
    //java.sql.SQLIntegrityConstraintViolationException:
    // Duplicate entry 'lisi' for key 'idx_username'

    @ExceptionHandler(SQLIntegrityConstraintViolationException.class)
    public R<String> ExceptionHandler(SQLIntegrityConstraintViolationException ex){
        log.error(ex.getMessage());
        if (ex.getMessage().contains("Duplicate entry")){
            String[] split = ex.getMessage().split(" ");
            String msg = "账号" + split[2] + "已存在";
            return R.error(msg);
        }
        return R.error("未知错误!");
    }
}

标签:SQLIntegrityConstraintViolationException,split,getMessage,ex,error,全局,异常,class,
From: https://www.cnblogs.com/9fall/p/17055718.html

相关文章