静态代理

原创 2013年12月04日 09:50:50

定义一个接口:

 

public class Tank implements Moveable {
	@Override
	public void move() {
		try {
			Thread.sleep(new Random().nextInt(10000));
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
	}
}

 被代理的接口一:

 

 

public interface Moveable {
	public void move();
}

 被代理接口二:

 

public interface TankLogger {
	public void startLogger();
	public void endLogger();
}	

代理一:

 

public class TankLoggerProxy implements Moveable{
	Moveable tank;
	public TankLoggerProxy(Moveable moveable) {
		super();
		this.tank = moveable;              
	}
	public void endLogger(){
	}
	@Override
	public void move() {
		System.out.println("logger tank start move");
		this.tank.move();
		System.out.println("logger tank end move");
	}
}

 代理二:

public class TankTimeProxy implements Moveable{
	Moveable tank;
	public TankTimeProxy(Moveable tank) {
		super();
		this.tank = tank;
	}
	public void move()
	{
		long start = System.currentTimeMillis();
		System.out.println("starttime:"+start);
		this.tank.move();
		long end = System.currentTimeMillis();
		System.out.println("endtime:"+end);
	}
}

  主函数:

 

public class TestMain {
	public static void main(String[] args) {
		Tank tank =  new Tank();
		Moveable tankTimeProxy = new TankTimeProxy(tank);
		Moveable tankLoggerProxy = new TankLoggerProxy(tankTimeProxy);
		Moveable m = tankLoggerProxy;
		tankLoggerProxy.move();
	}
}

 

相关文章推荐

spring+静态代理

  • 2015年03月23日 14:53
  • 17KB
  • 下载

Spring模拟aop静态代理案例

  • 2015年12月05日 17:01
  • 2.47MB
  • 下载

nginx反向代理,动静态分离,缓存

link: http://www.iteye.com/topic/966903 今天工作之余,继续拘捣鼓了一下nginx,尝试了一下,nginx反向代理,动静态请求分离,以及ngin...

静态代理demo

  • 2013年04月08日 13:15
  • 5KB
  • 下载

Java 静态代理

  • 2012年08月29日 12:39
  • 48KB
  • 下载

nginx做静态代理时css加载不出问题解决

有次项目中用到了前后端分离,nginx做了前端的静态代理。当配置nginx后,访问页面时出现了以下的bugcss文件实际上已经被加载出来了,但是页面却没有显示效果。报错是这样的: Resource ...

Java 静态代理模式

  • 2017年07月02日 19:40
  • 2KB
  • 下载

创建静态代理

  • 2012年08月29日 12:48
  • 24KB
  • 下载

使用nginx来完成反向代理及处理静态文件请求

这里主要分三块,分别是nginx的基础安装及使用,反向代理及处理静态文件的请求。 1.安装及使用(windows 平台)首先从这里下载nginx,照流程安装即可。如果觉得英语稍显吃力的话,可以看教程启...

代理模式(静态)

  • 2008年07月04日 20:05
  • 839KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:静态代理
举报原因:
原因补充:

(最多只允许输入30个字)