1.抛出异常有两种方式
第一种是在方法上throw
第二种是使用try-catch语句,在catch中new throw出去
一般会在controller层将service层的异常try-catch,将异常发给前端
2.异常处理分三类
第一类,特殊异常,即自己业务上的特殊异常,需要特别处理的,直接在catch中将该异常处理吃掉。比如有个业务需要访问一个鉴权的接口,当第一次鉴权不成功时,捕获到异常,在catch上继续鉴权。
第二类,可忽略的异常。即有些异常抛出不会影响正常流程和业务的,可忽略掉,在catch里不作处理
第三类,需要交给上一层处理的异常。比如在service层抛出的异常,需要再往上抛出去给controller层,让其处理或者发给前端。