package org.westos.使用反射做动态代理;
import java.lang.reflect.Proxy;
/*
*动态代理
* */
public class Demo {
public static void main(String[] args) {
//创建对象
Userdao ud = (Userdao)new Userdaoimpl();
// 针对UserDao对象ud给它生产一个代理对象
// 调用处理程序,接口实现类中产生代理
MyInvocationHandler handler = new MyInvocationHandler(ud);
// public static Object newProxyInstance(ClassLoader loader,
// Class<?>[] interfaces,
// InvocationHandler h)
// 返回一个指定接口的代理类实例,该接口可以将方法调用指派到指定的调用处理程序。
Userdao ud2 =(Userdao)Proxy.newProxyInstance(ud.getClass().getClassLoader(),
ud.getClass().getInterfaces(),
handler);
ud2.add();
ud2.delete();
ud2.find();
ud2.update();
}
}
package org.westos.使用反射做动态代理;
import java.lang