动态代理的java实现
来源:互联网 发布:无线路由器mac绑定 编辑:程序博客网 时间:2024/06/07 19:02
所谓代理模式中的代理,
其实非常类似于生活中的房产中介,经纪人,代理商的角色
而在实际应用中,动态代理用的比较多,
下文使用java reflect 下面的两个类做动态代理的简单实现。
先定义接口
public interface IConsumer { public void doPurchase(); public void doSaleReturn();}
一个实现该接口的类
public class Consumer implements IConsumer { @Override public void doPurchase() { System.out.println("consumerBuy"); } @Override public void doSaleReturn() { System.out.println("consumerSalesReturn"); }}
main方法
import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;
public static void main(String args[]){ final Consumer user = new Consumer(); InvocationHandler handler = new InvocationHandler() { @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { //这里可以做各种判断 System.out.println("doSomeThing"); Object result = method.invoke(user); return result; } }; IConsumer proxyUser = (IConsumer)Proxy.newProxyInstance(ClassLoader.getSystemClassLoader(), user.getClass().getInterfaces(), handler); proxyUser.doPurchase(); proxyUser.doSaleReturn(); }}本文介绍的代理是后面文章将讲到的AOP(面向切面编程)(Aspect Oriented Programming)的核心和关键技术。
阅读全文
0 0
- Java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- java动态代理的实现
- java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- Java动态代理的实现
- fastDfs安装及启动+nginx
- ZCMU新人训练赛A
- 工具优化
- JAVA多线程和并发基础面试问答
- Spring之ioc
- 动态代理的java实现
- 接收前台用echarts生成的若干张图表转为word提供下载
- java.math.BigInteger
- 一个demo学会css
- 现在才知道Java中变量声明可以放在赋值后面。。。
- 设计模式之职责链模式
- 快速、插入、冒泡排序,二分查找
- CentOS7 安装ARM Linux交叉编译环境
- mysql中的模糊查询