java的代理模式实例
来源:互联网 发布:整套python教学视频 编辑:程序博客网 时间:2024/06/06 17:37
接口文件Hello.java
package com.company.staticProxy;/** * Created by ken on 2016/7/25. */public interface Hello { void say(String str);}
实现文件HelloImpl.java
package com.company.staticProxy;/** * Created by ken on 2016/7/25. */public class HelloImpl implements Hello { public String name = "奥巴马"; public String name2 = "小奥巴马"; @Override public void say(String str) { //System.out.println("之前"); System.out.println("hello " + str); //System.out.println("之后"); }}
动态代理文件DynamicProxy.java
package com.company.dynamicProxy;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;/** * Created by ken on 2016/7/25. */public class DynamicProxy implements InvocationHandler {// 定义代理对象 public Object target; // 注入代理对象 public DynamicProxy(Object object) { this.target = object; } /** * * @param proxy 被代理对象 * @param method 代理对象的方法(核心业务) * @param args 调用代理方法所需参数 * @return 代理对象 * @throws Throwable */ @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { //before before(); //核心业务 Object obj = method.invoke(target, args); //after after(); return obj; } //before public void before(){ System.out.println("this is before"); } //after public void after(){ System.out.println("this is after"); }}
package com.company.dynamicProxy;import com.company.staticProxy.Hello;import com.company.staticProxy.HelloImpl;import java.lang.reflect.Proxy;/** * Created by ken on 2016/7/25. */public class MainTest { public static void main(String[] args) { //被代理对象 HelloImpl hello = new HelloImpl(); //创建动态代理对象 DynamicProxy proxy = new DynamicProxy(hello); // 获取被代理对象的代理 Hello result = (Hello) Proxy.newProxyInstance(hello.getClass().getClassLoader(),hello.getClass().getInterfaces(),proxy); result.say("思路网络科技"); } }
0 0
- java的代理模式实例
- JAVA的代理模式
- java的代理模式
- Java的代理模式
- Java的代理模式
- Java动态代理模式(Proxy)实例
- Java使用设计模式中的代理模式构建项目的实例展示
- java 代理模式 CGLIB的动态代理
- 代理模式PROXY的具体实例实现
- 代理模式实例-数据库连接池的实现
- 实例探索Java模式之路——代理模式
- Java的代理模式例子
- Java的动态代理模式
- 代理模式的java实现
- java的动态代理模式
- java-代理模式的复习
- java代理模式的体现
- 大话java的代理模式
- 【poj3045】牛的杂技
- iOS 怎麼搭建項目框架
- div 透明
- 【数据结构】单链表—冒泡排序
- LoadRunner学习移动App的脚本录制
- java的代理模式实例
- strtoul 函数解析
- Mysql里的JSON系列操作函数
- ViewStub的使用
- CF 219D. Choosing Capital for Treeland 树形DP
- Elasticsearch索引的父子关系(index parent-child)
- 文件捆绑
- java 读取properties文件
- Cpp环境【GRYZ2015】【Vijos3150】 足球联赛