zoukankan      html  css  js  c++  java
  • aop前传之代理

    一。jdk提供proxy类对目标对象实现代理,简单的说对方法的调用交给代理对象来操作。

    代理目标

    代理的具体实现:

    代理测试;

    简单说:利用proxy生成一个委托类实现代理。这个委托类是目标类的接口的实现,内部回调函数实际上是委托类对目标接口的重写方法。

    注意点,目标类必须是有接口的,回调类必须是inocationHandler的实现类。

    二。对与没有实现接口的类,要实现代理,可以用到第三方的cglib框架实现代理。spring和hibernate都在用的。CGLIB(Code Generation Library)是一个开源项目!是一个强大的,高性能,高质量的Code生成类库,它可以在运行期扩展Java类与实现Java接口。

    简单说:委托类通过继承目标类重写所以非final方法,回调函数就实际重写的方法。

    注意:回调类是接口MethodInterceptor实现类。

    补充:

    这样回调属于aop的一种概念

  • 相关阅读:
    【hdu4035】Maze
    【bzoj2707】走迷宫
    【CF123E】Maze
    【CF113D】Museum
    【recording】gdoi2018
    最近公共祖先(LCA)(题目)
    回转寿司
    counting
    B
    A
  • 原文地址:https://www.cnblogs.com/straybirds/p/5109387.html
Copyright © 2011-2022 走看看