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

java动态代理--代理接口无实现类java代理服务器实现

3天前CN2资讯


使用通过接口定义,或解析接口注解等完成相关功能,如mybatis的SqlSession.getMapper的实现

1.接口定义


1. package cn.proxy;
2.
3. public interface IHello {
4. String say(String aa);
5. }


2.代理实现


1. package cn.proxy;
2.
3. import java.lang.reflect.InvocationHandler;
4. import java.lang.reflect.Method;
5. import java.lang.reflect.Proxy;
6.
7. /**
8. * JDK动态代理代理类
9. *
10. */
11. @SuppressWarnings("unchecked")
12. public class FacadeProxy implements InvocationHandler {
13. @Override
14. public Object invoke(Object proxy, Method method, Object[] args)
15. throws Throwable {
16. "接口方法调用开始");
17. //执行方法
18. "method toGenericString:"+method.toGenericString());
19. "method name:"+method.getName());
20. "method args:"+(String)args[0]);
21. "接口方法调用结束");
22. return "调用返回值";
23. }
24.
25. public static <T> T newMapperProxy(Class<T> mapperInterface) {
26. ClassLoader classLoader = mapperInterface.getClassLoader();
27. new Class[]{mapperInterface};
28. new FacadeProxy();
29. return (T) Proxy.newProxyInstance(classLoader, interfaces, proxy);
30. }
31. }


4.运行









1. package cn.proxy;
2.
3. public class Test {
4. public static void main(String[] args) {
5. class);
6. "hello world"));
7. }
8. }



运行结果:




1. 接口方法调用开始
2. method toGenericString:public abstract java.lang.String cn.proxy.IHello.say(java.lang.String)
3. method name:say
4. method args:hello world
5. 接口方法调用结束
6. 调用返回值
7.


    你可能想看:

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

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

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

    分享给朋友:

    “java动态代理--代理接口无实现类java代理服务器实现” 的相关文章

    **解析cn2线路的美国vps:为什么它是你的最佳选择?**

    ---##cn2线路的美国vps,为什么它如此受欢迎?在数字化时代,VPS(虚拟私人服务器)已经成为企业和个人用户不可或缺的工具。无论是用于网站托管、游戏服务器搭建,还是作为企业数据中转站,VPS的功能和性能直接影响用户体验。在众多VPS服务中,"cn2线路的美国vps"凭借其独特的优势,迅速成为市...

    全面提升VPS性能测试与优化方法指南

    VPS性能测试概述 在使用VPS的过程中,了解它的性能测试显得尤为重要。VPS性能测试是一种评估虚拟专用服务器性能的手段,可以帮助我们清晰地了解VPS的状态与能力。这项测试不仅关注CPU型号、内存大小等硬件配置,还涵盖了磁盘存储量、操作系统版本以及虚拟化程序等多个方面的检测。通过这些参数,我们能对V...

    最便宜的域名注册平台推荐与选择技巧

    在创建一个新网站时,域名是一个不可或缺的部分。众所周知,一个好的域名能够提升品牌形象,也让用户更容易记住。选择便宜的域名注册平台,可以让我们在网站建设的开销上更加省钱。这里有几个我认为特别值得关注的平台,可能会对你有帮助。 1.1 NameCheap的优势与价格分析 让我先谈谈NameCheap。说...

    香港云服务器:灵活选择与网络优势助力企业发展

    香港云服务器作为一种现代化的网络托管服务,逐渐成为越来越多企业和个人用户的首选。这种服务的核心就是将服务器放置在香港的数据中心,提供灵活的云计算资源。对于希望在云端运作的用户来说,了解香港云服务器的定义与特点是非常重要的。 首先,香港云服务器的产品类型多种多样,从轻量云主机到快杰云主机,再到裸金属服...

    无限流量VPS:完美解决高流量需求的虚拟专用服务器方案

    大家好,今天我们来聊聊无限流量VPS,这个在市场上越来越受欢迎的虚拟专用服务器选项。无限流量VPS是指用户在支付固定的月租或年租费用后,能够无后顾之忧地使用数据流量。这样的服务到底有什么神奇之处,为什么越来越多的人选择它,我带你一起看看。 说到无限流量VPS,它的核心在于“无限流量”。想象一下,你的...

    Nginx Cache Control: 如何使用 No Cache 精确管理缓存策略

    作为一名开发者,我一直非常欣赏 Nginx 作为高性能 HTTP 和反向代理服务器的能力。Nginx 不仅在稳定性和可扩展性方面表现出色,它的缓存控制功能也相当强大。通过设置响应头,Nginx 能有效地管理客户端和代理服务器的缓存行为,让我在开发和部署时能够更灵活地处理资源的缓存。 使用缓存控制的好...