老师好!
关于统一异常处理这个地方我有几个问题:
AdException为什么要继承Exception而不是继承RuntimeException,Exception不是不支持事务回滚吗?
统一处理方法那个地方,老师的代码是
CommonResponse<String> response = new CommonResponse<>(-1,"business error");
那这样的话,捕捉到的AdException全都是相同的错误码-1 ,个人感觉这里用枚举会更好,在抛异常的时候传入枚举类型,然后AdException根据枚举设置code和msg,在这里捕获的时候用getCode和getMsg获取,这样对于不同的业务异常有不同的code,感觉更利于我们排查错误。
@ExceptionHandler(value = AdException.class) ,这里只捕获了AdException,那么如果产生了其他未知异常的时候返回给前端的结果也不友好,改为Exception.calss,然后根据instance of 判断异常类型是否属于AdException来作出相应的处理会不会更好一点。
handlerAdException这个方法是不是应该加上@ResponseBody注解。