jdk动态代理模式
2018-02-01 19:46
369 查看
UserDao dao =new UserDaoImpl();//目标类 UserDao proxy=(UserDao)Proxy.newProxyInstance( dao.getClass().getClassLoader(), dao.getClass().getInterfaces(), new InvocationHandler() { @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { System.out.println("开启"); Object object=method.invoke(dao, args);//dao是目标对象,参数默认 System.out.println("关闭"); return null; } }); proxy.addUser();
Dao是目标类,Proxy是代理类。本方法采用的是jdk动态代理方法。
第一个参数需要的是类加载器。所以是目标类dao的getClass().getClassLoader()。
第二个参数是要获取目标类的所有接口方法,即dao.getClass().getInterfaces()。
第三 实现一个InvocationHandle必须实现invoke方法
相关文章推荐
- 代理模式之JDK动态代理
- SSM框架day01——021——JDK动态代理模式、022-JDK动态代理模式的实现
- java动态代理模式Proxy之JDK动态代理机制
- 设计模式之Proxy(代理):模拟JDK的动态代理
- 模式的秘密-代理模式(2)-JDK动态代理
- 0104 Java设计模式03-动态代理(实战篇JDK和cglib)【进阶】
- java动态代理模式(jdk和cglib)
- JAVA的代理模式(静态代理、JDK动态代理、cglib动态代理)
- 7种结构型模式之:代理模式 、JDK动态代理、cglib动态代理
- 代理模式和JDK动态代理
- jdk动态代理模式的原理解析
- Java动态代理模式jdk和cglib的2种实现以及二者的区别(AOP面向切面的前奏)
- 深入理解代理模式:静态代理与JDK动态代理
- JDK动态代理模式
- 设计模式---动态代理(基于JDK的动态代理)
- 代理模式,JDK动态代理,SpringAOP来龙去脉
- 设计模式之JDK动态代理和Cglib动态代理
- Spring设计模式之JDK的动态代理!
- java 代理模式,JDK动态代理,SpringAOP的实现
- java 代理模式 jdk动态代理