欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

代理模式-静态代理

程序员文章站 2024-01-02 20:59:34
...

什么代理模式

通过代理控制对象的访问,可以详细访问某个对象的方法,在这个方法调用处理,或调用后处理。既(AOP微实现)  ,AOP核心技术面向切面编程。

代理模式应用场景

SpringAOP、事物原理、日志打印、权限控制、远程调用、安全代理 可以隐蔽真实角色

代理分类

静态代理(静态定义代理类)

动态代理(动态生成代理类)

Jdk自带动态代理

Cglib 、javaassist(字节码操作库)

静态代理

什么是静态代理

由程序员创建或工具生成代理类的源码,再编译代理类。所谓静态也就是在程序运行前就已经存在代理类的字节码文件,代理类和委托类的关系在运行前就确定了。

 

静态代理代码

public interface IUserDao {

void save();

}

public class UserDao implements IUserDao {

public void save() {

System.out.println("已经保存数据...");

}

}

代理类

public class UserDaoProxy implements IUserDao {

private IUserDao target;



public UserDaoProxy(IUserDao iuserDao) {

this.target = iuserDao;

}



public void save() {

System.out.println("开启事物...");

target.save();

System.out.println("关闭事物...");

}



}

 

上一篇:

下一篇: