zoukankan      html  css  js  c++  java
  • Spring(五)静态代理

    1、需要知道核心类(被代理类)是哪一个类,并且有什么方法。 

    2、非核心的代码需要重复写多次,显得代码的结构臃肿,形成代码冗余。

    3、非核心类(代理类)需要实现核心类(被代理类)实现的接口,也就是他们需要实现共同的接口,但是以核心类实现的接口(被代理类)为准。

    下面通过一个例子来说明

    先声明一个主题接口,接口的实现类有两个一个是真实主题,一个是代理主题

    public interface Subject
    {
    public void request();
    }

    在实现类中要重写这个方法

    public class RealSubjext implements Subject{
    public void request() {
    System.out.println("11111");
    }
    }

    public class ProxySubjext implements Subject{


    RealSubjext realSubjext = new RealSubjext();
    public void request() {
    System.out.println("00000");
    realSubjext.request();
    System.out.println("22222");
    }
    public RealSubjext getRealSubjext() {
    return realSubjext;
    }

    public void setRealSubjext(RealSubjext realSubjext) {
    this.realSubjext = realSubjext;
    }
    }

    /*静态代理*/
    @Test
    public void t1(){
    RealSubjext realSubjext = new RealSubjext();
    ProxySubjext proxySubjext = new ProxySubjext();
    proxySubjext.setRealSubjext(realSubjext);
    proxySubjext.request();


    }
  • 相关阅读:
    路由懒加载的实现
    vue中的tab栏切换内容变换
    H5页面的高度宽度100%
    vue中的路由的跳转的参数
    xxxx-xx-xx的时间的加减
    sql server 2008 R2 备份还原到sql 2012
    eval方法将字符串转换成json对象
    CSS3 圆角(border-radius)
    [Easyui
    JavaScript slice() 方法
  • 原文地址:https://www.cnblogs.com/a157/p/8526343.html
Copyright © 2011-2022 走看看