代理模式的定义:
由于某些原因需要给某对象提供一个代理以控制该对象的访问,这时访问对象不适合或者不能直接应用目标对象,代理对象作为访问对象和目标对象之间的中介。
JAVA接口代理模式的主要优点有:
1.代理模式在客户端与目标对象之间起到一个中介作用和保护目标对象的作用;
2.代理对象可以扩展目标对象的功能;
3.代理模式能将客户端与目标对象分离,在一定程度上降低了系统的耦合度
其主要缺点是:
1.在客户端和目标对象之间增加一个代理对象,会造成请求处理速度变慢;
2.增加了系统的复杂度;
简单的案例演示:
数据库有数据更新操作,现在要求在你的项目中为数据更新操作提供系统日志服务。每次更新需要把这条sql语句执行时间以及sql语句保存到日志文件中!
一、先定义一个以Iupadate的接口和一个抽象方法update参数为String
public interface Iupadate {
//定义一个接口
void update(String sql);
}
二、创建一个Stu类和继承Iupadate接口,作为被代理类
public class Stu implements Iupadate{
//定义一个被代理类实现该接口