java 自定义异常错误编码
生活随笔
收集整理的這篇文章主要介紹了
java 自定义异常错误编码
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前言
書寫java代碼的時候會用到統一的異常錯誤編碼,這里為大家介紹一下我的自定義異常錯誤編碼。
一、throw
throw關鍵字通常用在方法體中,表示拋出一個異常的動作,并且拋出一個異常對象。當方法在執行過程中遇到異常情況時,將異常信息封裝為異常對象,然后throw,它后面的語句就不執行了。
具體使用就是寫在方法里,當執行到throw就會拋出異常。
/*** 當前登錄人Entity** @return 用戶實體類*/public final static UserEntity getCurrentUser() {UserEntity user = (UserEntity) RequestContextUtils.get().getUserObject();if (user == null) {throw new CodeException(ErrorCode.CODE_501);//用戶未登陸,請重新登錄}return user;}二、代碼
1.錯誤編碼類
可分類自定義錯誤編碼,這樣可以統一管理。例如:用戶、角色、部門等等。
import java.util.HashMap; import java.util.Map;/*** 錯誤編碼*/ public class ErrorCode {//代碼緩存map信息private static Map<String, CodeMessage> codeMessageMap = new HashMap<String, CodeMessage>();//定義一個代碼信息類public static class CodeMessage {private final String code;private final String message;public CodeMessage(String code, String message) {this.code = code;this.message = message;}public String getMessage() {return message;}public String getCode() {return code;}}//添加代碼public static void addCode(String code, String message) {codeMessageMap.put(code, new CodeMessage(code, message));//存進代碼緩存ma}public static CodeMessage getCodeMessage(String code) {return codeMessageMap.get(code);}//基礎public static final String CODE_501 = "501";//用戶 public static final String CODE_PHONE_NUMBER_IS_NOT_EXIST = "601";//未找到該手機號碼對應的用戶!public void init() {//基礎this.addCode(ErrorCode.CODE_501, "用戶未登陸,請重新登錄");//用戶this.addCode(ErrorCode.CODE_PHONE_NUMBER_IS_NOT_EXIST, "未找到該手機號碼對應的用戶");} }2.初始化類
啟動項目時,同步初始化下就可以了。
import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;import java.util.concurrent.Callable;/*** 初始化**/ @Configuration public class InitConfiguration {private static final Logger logger = LoggerFactory.getLogger(InitConfiguration.class);@Beanpublic Initer initer() {return new Initer();}/*** 初始化** @param initer* @return*/@Beanpublic String init(Initer initer) {initer.registerInit(new Callable() {@Overridepublic Object call() throws Exception {new ErrorCode().init();return null;}});return null;} }總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家的支持。
希望能給大家帶來些許靈感。
XH:去發光,而不是被照亮,做些值得未來感謝的事吧。
總結
以上是生活随笔為你收集整理的java 自定义异常错误编码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java自定义异常及统一处理,信息返回
- 下一篇: MT 103+ Single Custo