• 阶段3 2.Spring_07.银行转账案例_9 基于子类的动态代理


    代理一个普通的java类


    导入cglib的包

    它还有一个asm的依赖。会自动加进来

    创建cglib的文件夹。把proxy里面的Client和Producer复制到cglib文件夹

    Producer不实现任何的接口

    Client内的代码要重新写

    不能受罪种类,如果是最终类就不能再创建子类了



    参数1是Class 参数2是Callback



    MethodInterceptor是Callback的子接口

    前面三个参数和基于接口的动态代码参数是一样的



    producer需要用final来修饰



    调用一下这个方法,传入1万2f





    对已经写好的方法进行增强。并且在增强的过程中提供一些我们需要实现的功能

    用处

    连接池的close方法在关闭的时候不能真正的关闭,而是要还回池中。那就可以使用动态代理的方式对connection的close方法进行增强。把它加回到池里面去

    解决全站中文乱码request方法的增强,用装饰者模式可以实现,用动态代理同样可以实现。就是对getParameter的三个方法进行增强。

     

  • 相关阅读:
    关于运行和调试的困惑
    初识函数
    Php的基本语法
    Apache的安装
    php的初步了解
    线程笔记
    Matlab笔记
    matlab取模与取余
    DialogFragment学习笔记
    MVP学习笔记——参考Google官方demo
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/11354283.html
Copyright © 2020-2023  润新知