自定义异常处理框架

一.简介

在程序开发中,我们会遇到各种异常的发生,对于Java开发框架,一共分为两种检查异常和运行时异常。

检查异常(checked exception)

有可能是程序的业务逻辑异常,这种异常一般都是开发人员自定义的、知道什么时候会抛出什么异常并进行捕捉处理;

也可以是系统的异常,不捕捉编译不会通过,如  IOException、SQLException、ClassNotFoundException , 这种是必须要捕捉的并且大多都是继承Exception。    

运行时异常

    一般都是系统抛出来的异常,这种异常不捕捉处理也不会报编译错误,如NullPointerException,ClassCastException。运行异常都是继承至RuntimeException。不管是检查异常还是运行时异常都是继承至Exception。

系统错误Error

这种异常是系统出现了故障抛出来的不能捕捉,如OutOfMemoryError。Exception和Error都是继承至Throwable。

二.异常处理格式

    了解了java的异常体系后,我们设计一下web框架的异常处理格式。在以往EJB时代的J2ee系统,一般是标准的三层架构:web层、业务逻辑层、数据访问层,并且每一层都分别部署在不同的机器集群中。这样我们的异常一般分为三个,WebException、BizException、DAOException分别映射到web层、业务逻辑层、数据访问层。并且这些异常都要设计的串行化可以跨机器传递生成异常链。这样的好处是看到异常链知道从哪儿抛出来的错误,比较清晰明了。

注意:系统异常需要记录log。

demo如下:

if (CollectionUtil.isEmpty(mLifePayOrderVs)) {
            throw new BizException(ErrorMessage.NOT_EXSIT);
        }

猜你喜欢

转载自blog.csdn.net/wang_snake/article/details/80803077