zoukankan      html  css  js  c++  java
  • SpringAOP基础

    代理模式在实现过程中,要创建一个接口(社交技巧-接口),代理类(经纪人 - 类)和真实类(范冰冰 - 类)同时实现这个接口。

    举个例子:

    我们想要找范冰冰吃饭,但是呢,她是大明星,不可能轻易见我们,我们需要先找范冰冰的经纪人。我们跟经纪人说:“我要找范冰冰吃饭”,如果经纪人同意,我们就可以和范冰冰吃饭,不同意的话我们就不能和范冰冰吃饭。

    package cn.tedu.staticproxy;
    /**
     * 社交技巧 - 接口
     */
    public interface SJSkill {
        public void 吃();
        public void 唱歌();
    }
    package cn.tedu.staticproxy;
    /**
     * 经纪人 - 类
     */
    public class JJRStaticProxy implements SJSkill{
    
        private FBB fbb = new FBB();
        
        @Override
        public void 吃() {
            System.out.println("权限认证:你谁啊????");
            fbb.吃();
            System.out.println("记录日志:等我,我记一下来访记录");
        }
    
        @Override
        public void 唱歌() {
            System.out.println("权限认证:你谁啊????");
            fbb.唱歌();
            System.out.println("记录日志:等我,我记一下来访记录");
        }
    
    }
    package cn.tedu.staticproxy;
    /**
     * 范冰冰 - 类
     */
    public class FBB implements SJSkill{
        public void 吃(){
            System.out.println("fbb吃饭。。。");
        }
        public void 唱歌(){
            System.out.println("fbb唱歌。。。");
        }
    }
    package cn.tedu.staticproxy;
    
    import org.junit.Test;
    /**
     * 测试 - 类 
     */
    public class StaticProxyTest {
        @Test
        public void test01(){
            JJRStaticProxy jjr = new JJRStaticProxy();
            jjr.吃();
            jjr.唱歌();
        }
    }
  • 相关阅读:
    DAS存储未死,再次欲获重生
    Minimum edit distance(levenshtein distance)(最小编辑距离)初探
    AC自己主动机
    手动脱UPX 壳实战
    edge中断分析
    ubuntu默认的Python版本号修改
    Linux 下 pushd,popd,cd- 用法
    目标检测算法的历史及分类
    openjtag 的硬件连接踩坑历程
    ubuntu 16.04 python版本切换(python2和python3)
  • 原文地址:https://www.cnblogs.com/chuijingjing/p/9795203.html
Copyright © 2011-2022 走看看