静态代理与动态代理

其实代理的一般模式就是静态代理的实现模式:首先创建一个接口(JDK代理都是面向接口的),然后创建具体实现类来实现这个接口,在创建一个代理类同样实现这个接口,不同之处在于,具体实现类的方法中需要将接口中定义的方法的业务逻辑功能实现,而代理类中的方法只要调用具体类中的对应方法即可,这样我们在需要使用接口中的某个方法的功能时直接调用代理类的方法即可,将具体的实现类隐藏在底层。
静态代理:

1.首先创建一个接口

2.通过接口创建实现类,并且执行相关的操作。
3.创建代理类:

 代理:在不修改原有代码的基础上对现有的方法进行功能增强。

jdk的动态代理:

 如果目标类没有生成代理对象:我们可以使用cglib

spring使用的是aop是原生的gdk代理和cglib代理判断是否是使用接口,如果使用接口就用原生,如果没有使用接口就用cglib。(cglib也可以代理有接口的对象)

 

 

 

 

 

 

posted @ 2019-04-02 20:03  三号小玩家  阅读(181)  评论(0编辑  收藏  举报
Title
三号小玩家的 Mail: 17612457115@163.com, 联系QQ: 1359720840 微信: QQ1359720840