局部异常处理

先看controller层

    @PostMapping("/regist")
    public R regist(@RequestBody MemberRegistVo vo) {
        try {
            umsMemberService.regist(vo);
        } catch (PhoneExistException e) {
            return R.error(BizCodeEnume.PHONE_EXIST_EXCEPTION.getCode(), BizCodeEnume.PHONE_EXIST_EXCEPTION.getMsg());
        } catch (UserNameExistException e) {
            return R.error(BizCodeEnume.USER_EXIST_EXCEPTION.getCode(), BizCodeEnume.USER_EXIST_EXCEPTION.getMsg());
        }
        return R.ok();
    }

可以看到,这里设置了两个异常处理,再来看看这两个异常的源码:

public class PhoneExistException extends RuntimeException {
    public PhoneExistException(){
        super("该手机号码已注册");
    }

}
public class UserNameExistException extends RuntimeException {
    public UserNameExistException(){
        super("用户名已存在");
    }
}

可以看到这两个异常都继承了运行时异常这个异常。

当项目在运行时出现异常就可以进行这两个具体异常的处理。

你可能感兴趣的:(中间件&服务框架,java,开发语言,异常处理,异常,局部异常,处理)