java jdk动态代理 实例 简单明了 对初学者非常有效
来源:互联网 发布:中创软件 编辑:程序博客网 时间:2024/05/05 10:43
注意:JDK的动态代理依靠接口实现
实例如下:
package com.jdkproxy;
/**
* 1、定义一个图书接口
*/
public interface Book {
//添加图书方法
public void addBook(String s);
}
2、定义一个类实现了Book接口
package com.jdkproxy;
public class BookImpl implements Book{
@Override
public void addBook(String s) {
System.out.println(s+"增加图书的方法.......");
}
}
3、定义一个动态代理类
package com.jdkproxy;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
public class BookProxy implements InvocationHandler{
private Object target;
public Object bind(Object target){
this.target=target;
return Proxy.newProxyInstance(target.getClass().getClassLoader(), target.getClass().getInterfaces(), this);
}
@Override
public Object invoke(Object proxy, Method method, Object[] args)
throws Throwable {
Object result=null;
System.out.println("事物开始.....");
result=method.invoke(target, args);
System.out.println("事物结束.....");
return result;
}
}
4、定义一个测试类
package com.jdkproxy;
public class TestJdkProxy {
/**
* main函数测试
* JDK的动态代理依靠接口实现,如果有些类并没有实现接口,
* 则不能使用JDK代理,这就要使用cglib动态代理了。
*/
public static void main(String[] args) {
BookProxy bookProxy=new BookProxy();
BookImpl bookImpl=new BookImpl();
//BookImpl proxy=(BookImpl) bookProxy.bind(bookImpl);
Book proxy=(Book) bookProxy.bind(bookImpl);//代理类和委托类进行绑定
proxy.addBook("****");
}
}
- java jdk动态代理 实例 简单明了 对初学者非常有效
- JDK动态代理实例
- Java代理(jdk静态代理、动态代理和cglib动态代理)实例及总结
- 动态代理--java jdk
- java jdk动态代理
- Java JDK动态代理
- java jdk 动态代理
- Java JDK 动态代理
- java jdk动态代理
- Java JDK 动态代理
- Java-JDK动态代理
- java jdk动态代理
- Java动态代理--jdk代理
- 使用jdk动态代理实例
- java动态代理 JDK、Cglib动态代理
- Java中的动态代理--JDK动态代理
- Java动态代理之JDK动态代理
- java动态代理实例
- LA 4329 Ping Pong 2008 北京区域赛 H , BIT 二叉索引树(树状数组)的应用
- Ajax中文乱码的解决办法
- mac小技巧
- ListVIew优化
- 信标网络 非信标网络
- java jdk动态代理 实例 简单明了 对初学者非常有效
- 在C++中判断模版实例化后的数据类型
- 第一次只出现一次的字符
- 3分钟左右的时间如何向MySQL数据库中插入100万条数据
- Splay伸展树学习小记 Poj 3580 SuperMemo
- Exercise2.1 E4
- VBA选择单元格的语句
- 牛人的技术博客
- C# GDI+编程(二)