• 静态代理


    首先我们来看一下思维导图,实现静态代理最最关键的一点是要把握住:代理类的通知(增强处理)直接写在传入的目标方法执行的前后的。

    实现静态代理的核心类是代理类:

    实现静态代理的步骤:

    1、创建主题接口

    package com.liwei.staticproxy;
    
    public interface Subject {
        void miai();
    }

    2、创建被代理的类

    package com.liwei.staticproxy;
    
    public class Person implements Subject{
    
        private String name;
        
        public Person(String name) {
            super();
            this.name = name;
        }
    
        public void miai() {
            System.out.println(name + "去相亲了。。。。。。。。");
        }
    
    }

    3、创建代理类

    package com.liwei.staticproxy;
    
    public class ProxyPerson implements Subject{
        private Subject target;
    
        public ProxyPerson(Subject target) {
            super();
            this.target = target;
        }
    
        public void miai() {
            System.out.println("前置通知。。。。。。。。。。。。。。。。。");
            this.target.miai();
            System.out.println("后置通知。。。。。。。。。。。。。。。。。");
        }
        
        
    }

    4、写测试类

    package com.liwei.staticproxy;
    
    
    public class Test {
        public static void main(String[] args) {
            Person liwei = new Person("liwei");
            ProxyPerson proxy = new ProxyPerson(liwei);
            proxy.miai();
        }
    }

    静态代理的测试代码并不复杂,在这里就不给出源代码压缩包了。

  • 相关阅读:
    相对定位和绝对定位
    一切重新开始
    Oracle Profile 使用
    使用javamail发送邮件错误:550 5.7.1 Unable to relay
    gvim 备份文件去除 配置
    解决Maven中OutOfMemory错误
    sqlplus启动后的环境SQLPATH的设置
    ORA-30004 错误处理
    oracle 锁表查询及解决、表字段查询
    如何进行软件架构设计
  • 原文地址:https://www.cnblogs.com/liweiwei1419/p/4380938.html
Copyright © 2020-2023  润新知