java使用枚舉封裝錯誤碼及錯誤信息詳解
更新時間:2021年12月27日 11:09:17 作者:dream_lixiang
這篇文章主要介紹了java使用枚舉封裝錯誤碼及錯誤信息,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
枚舉封裝錯誤碼及錯誤信息
使用枚舉類型來封裝project中所需要的錯誤碼和錯誤信息,十分方便。
用法如下
package com.dear.simpler.dbservice;
/**
*
* @author lixiang
*使用枚舉類型來封裝異常碼和異常信息
*
*/
public enum DBServiceError {
//RPC層調(diào)用錯誤碼
DB_SERVICE_OK(20100,"服務(wù)正常")
,DB_SERVICE_DBDAO_ERROR(20104,"返回數(shù)據(jù)庫的具體異常信息")
,DB_SERVICE_SPEAKER_NOT_EXISTED(20108,"數(shù)據(jù)庫中沒有要查詢的speaker")
,DB_SERVICE_SPEAKER_HAVE_NOT_VP(20109,"speaker中沒有對應(yīng)的voiceprint")
,DB_SERVICE_UNKNOWN_ERROR(20101,"未知異常")
,DB_SERVICE_AGENT_ERROR (20102, "DBServiceAgent異常")
,DB_SERVICE_NETWORK_ERROR (20103,"網(wǎng)絡(luò)異常")
,DB_SERVICE_INVALID_FUNCTION(20105, "方法名不存在")
,DB_SERVICE_INVALID_PARAMETER(20106,"方法參數(shù)錯誤")
,DB_SERVICE_FUNCTION_NO_ACCESS(20107,"對此方法無訪問權(quán)限");
private String msg;
private int code;
private DBServiceError(int code,String msg)
{
this.code=code;
this.msg=msg;
}
public String getMsg()
{
return this.msg;
}
public int getCode() {
return this.code;
}
}
使用時:
DBServiceError.DB_SERVICE_NETWORK_ERROR.getCode();
DBServiceError.DB_SERVICE_NETWORK_ERROR.getMsg();
封裝返回結(jié)果類和枚舉錯誤碼
枚舉錯誤碼
/**
* 枚舉錯誤碼
*/
public emum ErrorCode{
FAILED(601,"操作失敗"),
AUTH_ERROR(401,"認(rèn)證失敗"),
SYS_ERROR(500,"系統(tǒng)錯誤"),
PARAM_ERROR(400,"參數(shù)錯誤"),
UNKNOWN_ERROR(499,"未知錯誤");
private int code;
private String message;
private ErrorCode(int code, String message) {
this.code=code;
this.message=message;
}
public String getMessage() {
return this.message;
}
public int getCode() {
return this.code;
}
}
封裝返回結(jié)果類
/**
* 返回結(jié)果類
*/
public class JsonResult {
private int status = 0;
private String msg = "success";
private Object data;
// 幾個常用方法
public JsonResult success() {
return new JsonResult();
}
public JsonResult success(Object data) {
return new JsonResult(data);
}
public JsonResult error(ErrorCode errorCode) {
return new JsonResult(errorCode.getCode(), errorCode.getMessage());
}
public JsonResult error(int state, String message) {
return new JsonResult(state, message);
}
public JsonResult error(int state, String message, Object data) {
return new JsonResult(state, message, data);
}
// 幾個構(gòu)造方法
public JsonResult() {
}
public JsonResult(Object data) {
this.data = data;
}
public JsonResult(Integer state, String message) {
this.state = state;
this.message = message;
}
public JsonResult(Integer state, String message, Object data) {
this.state = state;
this.message = message;
this.data = data;
}
public Integer getStatus() {
return status;
}
public void setStatus(Integer status) {
this.status = status;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public Object getData() {
return data;
}
public void setData(Object data) {
this.data = data;
}
}
完美?。?!
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
簡單介紹區(qū)分applet和application的方法
applet和application都是Java語言編寫出來的應(yīng)用程序,本文簡單介紹了二者的不同之處,需要的朋友可以參考下2017-09-09
idea環(huán)境下Maven無法正常下載pom中配置的包問題
這篇文章主要介紹了idea環(huán)境下Maven無法正常下載pom中配置的包的問題,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-06-06
Java非靜態(tài)成員變量之死循環(huán)(詳解)
下面小編就為大家?guī)硪黄狫ava非靜態(tài)成員變量之死循環(huán)(詳解)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09

