AOP编程思想实现全局异常处理

什么是AOP切面编

下面通过一个实例来告诉大家,以接口数据验证为列

  

我们可以把方框里边的流程合为一个,因为还有另一个接口,我们把他俩发在一起

我们可以发现,这两个接口有一样的验证流程,我们把一样的括起来再说:

有没有想过把这个验证数据的代码提出来,不放到主流程去,这就是AOP的作用了,有了AOP你写代码不用考虑数据验证这一个环节,你直接编写你的主体代码,当你的主体代码写完之后,在另一个地方写数据验证的类,然后你用到他就去加载他。

上面就是我描述AOP编程思想,我们可以把括号里面的内容看成一个面,我们在这个面加一些控制代码,这个括号就可以看成一个AOP的切面。其实AOP就是纵向的控制流程,我们把那些相同的流程提出来形成一个横向的面,这个面就是切面;

代码实例

我以laravel框架为例,给大家利用AOP面向切面的编程思想编写全局异常

一、我们在App\Exceptions里面建立我们基类异常处理,因为laravel的异常默认放在这个位置

编写的代码如下

首先我定义了三个成员属性,code:代表HTTP响应的状态码,msg:代表异常提示信息,errorCode:表示自定义错误码

二、在框架的App\Exceptions\handler.php去实现我们异常的基类

三、我们在代码里面调用我们的异常

猜你喜欢

转载自www.cnblogs.com/meichao/p/9135904.html
今日推荐