美文网首页
Java设计模式之动态代理模式

Java设计模式之动态代理模式

作者: BestbpF | 来源:发表于2018-08-19 21:04 被阅读51次

    形象描述

    在将代理模式前,我们先来假设这样一个场景。

    • 你是一个程序员,客户带着需求去找你们公司,不会和你直接谈,而是通过商务,此时客户会任务商务就能代表你们公司。下面用一张图来说明。


    • 商务的作用有很多方面:
      1、项目启动前的商务谈判
      2、项目结束后的账款追讨
      3、有可能在软件开发前,谈判失败,商务来终止公司与客户的合作
      4、.....
    • 这些流程都不需要程序员去管,由商务控制了客户队程序员的访问

    动态代理

    • 动态代理就是通过生成一个占位(代理对象),来代理真实的对象,从而控制真实对象的访问,在上述例子中,商务就是一个代理对象。
    • 代理的作用就是,在真实对象访问之前或者之后加入相应的逻辑,或根据其他规则控制是否使用真实对象。

    实现步骤

    1. 代理对象和真实对象之间建立代理关系。
    2. 实现代理对象的代理逻辑方法。
    Java中有多种动态代理技术,如JDK、CGLIB、Javassist、ASM等,其中最常用的就是JDK动态代理CGLIB动态代理。但无论是哪种,他们的理念都是相似的。

    相关文章

      网友评论

          本文标题:Java设计模式之动态代理模式

          本文链接:https://www.haomeiwen.com/subject/njlhiftx.html