当前位置:首页 > CN2资讯 > 正文内容

Java动态代理--JDK动态代理

2天前CN2资讯
package com.mzsx.proxy; public interface FunctionServer { void creatdDoc(int count); void removeDoc(int count); }


package com.mzsx.proxy; public class FunctionServerImp implements FunctionServer { @Override public void creatdDoc(int count) { System.out.println("创建了"+count+"对象。。。。。。。"); } @Override public void removeDoc(int count) { System.out.println("删除了"+count+"对象。。。。。。。"); } }


package com.mzsx.proxy; public class Porformant { private long start; private long end; public void start(){ System.out.println("执行start。。。。。"); start =System.currentTimeMillis(); } public void end(){ end=System.currentTimeMillis(); System.out.println("耗时"+(end-start)+"ms........"); } }



package com.mzsx.proxy; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; public class FunctionHandler implements InvocationHandler { private Object target; public FunctionHandler(Object target){ this.target=target; } @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { System.out.println("==============:"+proxy.getClass().getName()); Porformant porformant=new Porformant(); porformant.start(); Object object=method.invoke(target, args); porformant.end(); return object; } }package com.mzsx.proxy; import java.lang.reflect.Proxy; public class Functiontest { public static void main(String[] args) { // TODO Auto-generated method stub FunctionServer functionServer=new FunctionServerImp(); FunctionHandler functionHandler=new FunctionHandler(functionServer); FunctionServer proxy=(FunctionServer)Proxy.newProxyInstance(functionServer.getClass().getClassLoader(), functionServer.getClass().getInterfaces(), functionHandler); proxy.creatdDoc(10); System.out.println("-------------------------------------------"); proxy.removeDoc(20); } }


结果:

==============:$Proxy0 执行start。。。。。 创建了10对象。。。。。。。 耗时0ms........ ------------------------------------------- ==============:$Proxy0 执行start。。。。。 删除了20对象。。。。。。。 耗时1ms........


    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/24022.html

    分享给朋友:

    “Java动态代理--JDK动态代理” 的相关文章

    如何在VPS上启用和配置IPv6以提升网络性能

    在当今数字化的时代,互联网已经成为我们日常生活中不可或缺的一部分。随着设备和用户数量的快速增长,现有的IPv4地址开始捉襟见肘。这时,IPv6(Internet Protocol Version 6)应运而生,作为下一代互联网协议,它的出现可以说是一种必然趋势。IPv6不仅解决了IPv4地址耗尽的问...

    HostDare VPS主机服务评测:高性价比与用户体验的完美结合

    在与HostDare的互动中,我感受到这家公司在客户支持与用户体验方面的一些亮点和不足。正如我们所知,HostDare是一家致力于提供高性价比VPS主机服务的公司,尤其在针对中国大陆用户的优化上表现突出。虽然服务上有一些待改善之处,但总体而言,它的客户支持体系还是相对高效的。 首先,HostDare...

    最新hudsonvalleyhost优惠码使用技巧与推荐2023

    hudsonvalleyhost 优惠码介绍 hudsonvalleyhost优惠码是一种可以帮助用户在使用hudsonvalleyhost服务时节省费用的代码。这种优惠码一般由字母和数字组成,用户在进行购买或订阅相关服务时输入该代码,就可以享受到折扣或特定的优惠。每个优惠码的有效期和适用范围可能不...

    探索VPS:虚拟专用服务器的优势与使用技巧

    说到VPS,许多人可能会感到陌生。其实,它是“虚拟专用服务器”(Virtual Private Server)的缩写。简单来讲,VPS就是一种把一台物理服务器划分成多个虚拟服务器的技术。每个虚拟服务器都有自己独立的操作系统、资源和配置,这为用户提供了高度个性化的设置选项。 在我的经历中,VPS的工作...

    Cloudflare API教程:全面掌握网站加速与安全管理

    Cloudflare API概述 什么是Cloudflare API? Cloudflare API 是一个强大的工具,可以让开发者与 Cloudflare 的各项服务进行直接互动。换句话说,Cloudflare 提供了一个丰富的接口,使我们可以通过程序控制和管理云服务,而不仅仅依赖于图形化用户界面...

    购买服务器指南:选择适合您的服务器类型与预算

    在决定购买服务器之前,理解服务器的定义和作用至关重要。简单来说,服务器是一种强大的计算机,专门用来提供资源、数据和服务给其他计算机。这些服务可能包括网站托管、数据库管理以及应用程序支持。因此,服务器不仅是企业运作的重要基础,同时也是开发和提供在线服务的核心。 购买服务器的必要性往往被低估。许多企业在...