java代理模式分为动态模式和静态模式,其中动态模式的实现方式之一是利用JDK自带的InvocationHandler接口来实现,该种方式代理对象只能是接口;具体如何运用,以下以测试代码简单说明。
工具/原料
1
jdk1.8
2
IntelliJ IDEA
方法/步骤
1
因jdk自带的代理实现只能运用于代理接口,因此先创建一个接口以及其实现类。
2
创建代理类,实现InvocationHandler接口。
3
引入Object类作为目标对象,重写有参构造器,并且重写invoke方法,加入前置后置通知,以及调用Object类方法。
4
编写测试方法,首先传入目标对象并实例化代理类;
5
利用Proxy对象,生成动态代理对象,并调用目标对象中的方法;
6
运行测试类,得出动态代理的结果。
7
总结使用jdk动态代理的步骤:首先需要以有参构造(参数为目标对象)实现InvocationHandler接口的实例,然后利用Proxy对象生成动态代理对象。最后调用通过动态代理对象调用目标对象方法。
注意事项
jdk的动态代理目标对象只能是接口
上一篇:换了单位中级职称怎么办理