/**
* 統一異常碼介面定義
* * @author 王洪玉
* @date 2018/11/11
*/public inte***ce exceptionenum
/**
* 全域性異常錯誤碼
*/public enum resultmsgenum implements exceptionenum
@override
public integer getcode()
@override
public string getmessage()
}
/**
* cms系統錯誤異常碼 5001**
*/public enum cmserrorcodeenum implements exceptionenum
private integer code;
private string message;
@override
public integer getcode()
@override
public string getmessage()
}
/**
* 通用返回result
*/@data
public class zingresultimplements serializable
private zingresult(t data)
private zingresult(exceptionenum exceptionenum)
public static zingresult success()
public static zingresultsuccess(t data)
public static zingresulterror(exceptionenum exceptionenum)
}
/**
* 異常父類
* * @author 王洪玉
* @date 2018/11/11
*/@getter
public class zingexception extends runtimeexception
}
/**
* 業務自定義異常類
*/@getter
public class busines***ception extends zingexception
}
@slf4j
@responsebody
@controlleradvice
public class globalexceptionhandler 出現系統異常,異常資訊為:", request.getrequesturi(), e);
return zingresult.error(resultmsgenum.error);
}/**
* 攔截cms業務異常
** @param request 請求
* @param e 業務異常
* @return 通用返回格式
*/@exceptionhandler(cmsbusines***ception.class)
public zingresult cmsbusines***ception(httpservletrequest request, cmsbusines***ception e) 出現業務異常,異常資訊為:", request.getrequesturi(), e);
return zingresult.error(e.getexceptionenum());
}}
if(collectionutils.isempty(articlelist))
Result物件 統一異常處理
統一異常碼介面定義 author 王洪玉 date 2018 11 11 public inte ce exceptionenum 全域性異常錯誤碼 public enum resultmsgenum implements exceptionenum override public integer ...
統一異常處理
為什麼需要做統一異常處理 因為如果不做統一處理,返回與前端的資料會非常亂,前端不好處理 並且不做統一處理,controller層就要寫很多的重複 統一格式 實現步驟 新建result物件 也就是請求返回的整體物件,包括code,msg,data public class result public ...
統一異常處理
1,建立統一異常處理類package com.xindong.common.handler 統一異常處理類 controlleradvice public class globalexceptionhandler exceptionhandler badsqlgrammarexception.cla...