Spring(十三):设计模式——代理模式

Spring(十三):设计模式——代理模式

Spring中AOP的底层原理就是动态代理模式,所以我们在这里对代理模式进行学习。

一、代理模式

1.什么是代理

代理,顾名思义,就是一个人代替另一个人去做他需要做的事情。代理是一种设计模式,具体实现就是一个类代替某个类去实现功能。

我们举一个例子:

我要租房子,我可以找房东直接租房子。同样我可以找中介来租房子,这个中介就是代理,它代理房东来做租赁房子的事情。

2.为什么需要代理模式呢?

我们的开发一般都是纵向开发,当有新的需求出现但又不想改变原有的业务逻辑时,就需要用到代理模式了,代理模式属于横向开发,我们只需要代理原来的业物逻辑并在代理类中添加新的功能即可。

二、静态代理

1.定义一个接口;

2.被代理类实现接口;

3.代理类引用被代理类,并且通过被代理类的方法实现接口。

我们以上图为例子,来进行一个静态代理的简单应用:

1.定义一个rental接口

package com.jms.demo01;
//租房接口
public interface rental {
    void doRental();
}
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » Spring(十三):设计模式——代理模式