• 代理设计模式


    1.设计模式:前人总结的-套解决特定问题的代码,
    2.代理设计模式优点:
      2.1保护真实对象
      2.2让真实对象职责更明确.
      2.3扩展
    3.代理设计模式
      3.1真实对象.(老总)

      3.2代理对象(秘书)

      3.3抽象对象(抽象功能)谈小目标

    一、静态代理设计模式

    1.由代理对象代理所有真实对象的功能.
      1.1自己编写代理类
      1.2每个代理的功能需要单独编写
    2.静态代理设计模式的缺点:  
      2.1当代理功能比较多时,代理类中方法需要写很多,

    二、动态代理
    1.为了解决静态代理频繁编写代理功能缺点.
    2.分类:
      2.1 JDK提供的
      2.2 cglib动态代理

    三. JDK动态代理
    1.和cglib动态代理对比
      1.1优点:jdk 自带,不需要额外导入jar
      1.2缺点:
        1.2.1真实对象必须实现接口
        1.2.2利用反射机制.效率不高.
    2.使用JDK动态代理时可能出现下面异常
      2.1出现原因:希望把接口对象转换为具体真实对象
     
    四、cglib动态代理
    1. cglib优点:
          1.1基于字节码,生成真实对象的子类
            1.1.1运行效率高于JDK动态代理
          1.2不需要实现接口
    2. cglib 缺点:
          2.1非JDK功能需要额外导入jar
    3.使用spring aop时,只要出现Proxy和真实对象转换异常
          3.1设置为true使用cglib
          3.2设置为false使用jdk(默认值
  • 相关阅读:
    常用: JS 获取浏览器窗口大小
    教你开发jQuery插件
    JS基础篇--JS的event.srcElement与event.target(触发事件对象)
    javascript中基本类型和引用类型的区别分析
    代码风格与文件模板
    定制外观
    安装与使用
    with as 如何工作
    面向对象进阶
    mro具体解释
  • 原文地址:https://www.cnblogs.com/girl1314/p/10966288.html
Copyright © 2020-2023  润新知