spring的日志代理方式

来源:互联网 发布:115会员淘宝购买 编辑:程序博客网 时间:2024/05/16 06:50
  static方式
 关键部分:需要通过proxy绑定具体的delegate
  
  UserDao dao;
  LogProxy(UserDao dao){
   this.dao = dao ;
   }

 直接用被代理类的对象进行操作
  dao.del(name);

dynamic方式
 动态绑定
  public Object bind(Object delegate)

  key:return Proxy.newProxyInstance(cls.getClassLoader(),
    cls.getInterfaces(), this);//绑定delegate
 动态调用
  public Object invoke(Object proxy, Method method, Object[] args)
   throws Throwable

  key:method.invoke(delegate,args)  //动态调用delegate中的方法

原创粉丝点击