public jsonresponse testrunold() catch (datanotcompleteexception e) catch (exception e)
}
@controller
public
class
testcontroller
}
@service
public
class
exampleservice
implements
iexampleservice
}
幾個核心類**public
enum errormsgenum
private
boolean ok;
private
int code;
private string msg;
private string usermsg;
}
public
class jsonresponse
public
static jsonresponse newok()
public
static jsonresponse newok(object data)
public
static jsonresponse newerror()
public
static jsonresponse newerror(errormsgenum errormsgenum)
}
public
class
customexception
extends
exception
}
@around("execution(public * com.jason.*.controller..*.*(..))")
public jsonresponse serviceaop(proceedingjoinpoint pjp) throws exception catch (customexception e) else
} catch (exception e)
return newresultvo;
}
至此,我們已經可以直接在 service 或 controller 中隨意丟擲乙個異常,
直接每個控制器方法丟擲的異常定義為 throws exception 即可
經過這次處理:
統一異常處理
為什麼需要做統一異常處理 因為如果不做統一處理,返回與前端的資料會非常亂,前端不好處理 並且不做統一處理,controller層就要寫很多的重複 統一格式 實現步驟 新建result物件 也就是請求返回的整體物件,包括code,msg,data public class result public ...
統一異常處理
1,建立統一異常處理類package com.xindong.common.handler 統一異常處理類 controlleradvice public class globalexceptionhandler exceptionhandler badsqlgrammarexception.cla...
統一異常處理
controlleradvice 用於捕獲全域性異常 exceptionhandler 傳入指定異常類 controlleradvice public class globalexceptionhandler 指定什麼異常執行該方法 exception 所有異常 exceptionhandler a...