写点什么

案例研究之聊聊 QLExpress 源码 (四)

发布于: 2021 年 01 月 12 日
案例研究之聊聊 QLExpress 源码 (四)

异常模块通常是每个源码框架都会自己根据自己框架的不同异常进行自定义化的封装,方便能够快速定位本身系统的问题。

四、异常模块(Exception)

4.1、QLBizException 业务异常


非 QLExpress 框架捕获的业务系统代码的异常

package com.ql.util.express.exception;
/** * 非QLExpress框架捕获的业务系统代码的异常 * @author tianqiao@taobao.com * @since 2019/6/18 2:13 PM */public class QLBizException extends Exception {
public QLBizException() { }
public QLBizException(String message) { super(message); }
public QLBizException(String message, Throwable cause) { super(message, cause); }}
复制代码

4.2、QLCompileException 编译异常


编译器的异常信息

package com.ql.util.express.exception;
/** * 编译器的异常信息 * @author tianqiao@taobao.com * @since 2019/6/18 2:13 PM */public class QLCompileException extends Exception {
public QLCompileException() { }
public QLCompileException(String message) { super(message); }
public QLCompileException(String message, Throwable cause) { super(message, cause); }}
复制代码

4.3、QLException 运行异常


QLExpress 的框架执行过程中捕获的异常

package com.ql.util.express.exception;
/** * QLExpress的框架执行过程中捕获的异常 * @author tianqiao@taobao.com * @since 2019/6/18 2:13 PM */public class QLException extends Exception {
public QLException() { }
public QLException(String message) { super(message); }
public QLException(String message, Throwable cause) { super(message, cause); }}
复制代码

4.4、QLSecurityRiskException 系统安全相关异常


系统安全相关异常(比如调用操作系统命令等)

package com.ql.util.express.exception;
/** * 系统安全相关异常(比如调用操作系统命令等) * @author tianqiao@taobao.com * @since 2019/6/18 10:36 AM */public class QLSecurityRiskException extends QLException {
public QLSecurityRiskException() { }
public QLSecurityRiskException(String message) { super(message); }}

复制代码

4.5、QLTimeOutException 超时异常


设置了 timeoutMills 造成的超时异常

package com.ql.util.express.exception;
/** * 设置了timeoutMills造成的超时异常 * @author tianqiao@taobao.com * @since 2019/6/18 10:36 AM */public class QLTimeOutException extends QLException {
public QLTimeOutException() { }
public QLTimeOutException(String message) { super(message); }}
复制代码

4.6、小结


本节主要描述了异常的定义,这里开源框架的借鉴思想:

  • 业务异常、运行异常、编译异常、安全异常、超时异常的分类

  • 明细的异常能够更快的,更方便定位问题


发布于: 2021 年 01 月 12 日阅读数: 28
用户头像

小胜靠智,大胜靠德 2019.06.27 加入

历经创业、京东、腾讯、滴滴公司,希望能够有些东西一起分享。公众号:小诚信驿站,微信/CSDN搜索:wolf_love666

评论

发布
暂无评论
案例研究之聊聊 QLExpress 源码 (四)