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

java的静态代理

3天前CN2资讯


解决问题:在多个模块要插入一段功能,比如,在不同业务处理模块中,都需要检查用户是否登录,如果不使用代理的话,每增加一个模块,就需要增加很多代码。

比如,除了判断是否登录,如果还需要增加一个记录日志的功能,那么每个模块都需要重新增加一个函数。

下面我们利用静态代理的功能来解决这个需求。

代码结构


功能函数接口

package itbuluoge.proxy;

public interface ICompent {

public void bussiness1();
public void bussiness2();
public void bussiness3();
}


代理类

package itbuluoge.proxy;

public class ProxyCompent implements ICompent{

private ICompent ic;

public ProxyCompent(ICompent ic)
{
this.ic=ic;
}

public void validateUser()
{
System.out.println("验证用户...");
}
public void bussiness1() {
// TODO Auto-generated method stub
validateUser();
ic.bussiness1();
}

public void bussiness2() {
// TODO Auto-generated method stub
validateUser();
ic.bussiness2();
}

public void bussiness3() {
// TODO Auto-generated method stub
validateUser();
ic.bussiness3();
}


}


被代理类

package itbuluoge.proxy;

public class Compent implements ICompent{

public void bussiness1() {
// TODO Auto-generated method stub
System.out.println("业务1");
}

public void bussiness2() {
// TODO Auto-generated method stub
System.out.println("业务2");
}

public void bussiness3() {
// TODO Auto-generated method stub
System.out.println("业务3");
}


}


测试类

package itbuluoge.proxy;

public class Test {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
ProxyCompent myProxy=new ProxyCompent(new Compent());
myProxy.bussiness1();
myProxy.bussiness2();
myProxy.bussiness3();
}

}


输出结果


我们可以看到,如果我们需要在很多个加入共同的函数的时候,只需要在代理类中增加即可。而且可以看出,代理类中只有自己的业务逻辑,没有其他的任何服务,服务都定义在被代理类本身。



    你可能想看:

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

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

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

    分享给朋友:

    “java的静态代理” 的相关文章

    六六云使用教程及价格比较,让你轻松选择合适的云服务

    六六云使用教程 六六云,作为一个备受欢迎的云服务平台,提供原生IP和住宅IP VPS服务器,适合多种需求,比如电商、游戏和流媒体等。选择合适的VPS套餐,是使用六六云的第一步。我们可以从多个方面进行比较,了解各个地区的服务器优缺点。比如,美国的服务器在速度上表现出色,但价格可能较高,而香港服务器则在...

    最优秀的IP检测工具,提升网络安全与性能的选择

    IP检测工具是一种极为重要的网络资源,旨在帮助用户识别和分析IP地址信息。像我们在日常上网时,需要了解自己的网络状态,了解与其他用户的连接关系,这时候IP检测工具就显得尤为重要。无论你是网络管理员、开发者,还是只是单纯的网络用户,这类工具总是能够给你带来实用的信息与帮助。 了解IP检测工具的工作原理...

    机房迁移全攻略:确保系统安全与顺利过渡的最佳实践

    机房迁移是一个涉及将数据中心内各种设备从一个地点转移到另一个地点的复杂过程。具体包括服务器、存储设备以及网络设备等。这样的迁移通常不仅仅是物理搬运,还涉及到设备的断电、拆卸、运输、重新安装与最后的测试,确保系统在新环境中能够正常运行。对于企业而言,这一过程对运营的影响极小,数据的安全性必须得到保障,...

    内部错误解决指南:快速识别与处理方法

    一说到“内部错误”,我们很多人可能会感到一头雾水。其实,内部错误是指在计算机系统或程序内部发生的那种错误。这类错误通常是由于系统内部的某些故障所造成的,或是程序代码本身的一些问题。如果我们把计算机比作一个庞大的工厂,那么内部错误就像是工厂里机器运转不畅或部件失灵,导致整个生产线出现问题。 理解内部错...

    VPS测速:优化服务器性能与用户体验的关键工具

    当谈到网络服务时,VPS(虚拟专用服务器)是一个绕不开的话题。它为用户提供了一个灵活且高效的网络环境,通过虚拟化技术将一台物理服务器分割成多个独立的虚拟服务器。用户可以拥有自己的操作系统、存储空间和带宽,这使得VPS成为了许多企业和个人的理想选择。 通过使用VPS,用户能够执行各种任务,比如搭建网站...

    阿拉伯 VPS 购买指南:选择高效稳定的虚拟私人服务器

    在数字化时代,越来越多的人和企业需要高效、稳定的网络服务。此时,VPS(虚拟私人服务器)就成为了一个非常受欢迎的选项。VPS 是将物理服务器虚拟化后形成的多个独立虚拟服务器,每个 VPS 都拥有独立的操作系统和资源,这让它们很适合那些需要高度自定义和安全性的用户。 谈到阿拉伯 VPS,它们的特点尤为...