当前位置: 首页 > news >正文

南京律师网站建设网站代码用什么打开

南京律师网站建设,网站代码用什么打开,怎么制作小网站 不用域名的,wordpress video模板代理模式的定义是:为其他对象提供一种代理以控制对这个对象的访问。 因为代理类与服务类实现同样的接口,所以代理类能代替服务类提供给客户端。当客户端使用代理类时,代理类能对请求进行处理(例如增加访问控制、缓存请求结果、隐…

代理模式的定义是:为其他对象提供一种代理以控制对这个对象的访问。

因为代理类与服务类实现同样的接口,所以代理类能代替服务类提供给客户端。当客户端使用代理类时,代理类能对请求进行处理(例如增加访问控制、缓存请求结果、隐藏对服务类的网络请求、日志记录等),并将请求转发给服务类来处理。

该模式存在 3 类角色:

  1. 服务接口:定义被代理的服务类接口
  2. 服务类:提供实际的逻辑
  3. 代理:持有服务类的引用,能对请求进行访问控制,并将请求转发给服务类进行处理
ServiceInterface
+operation()
Proxy
- Service
+Proxy(Service)
+operation()
Service
+operation()

在 Java 存在两种代理的实现方法,一种是静态代理,通过继承或组合的方式实现;另一种是动态代理,使用反射的方式实现。

静态代理方式的代码实现为:

//服务接口
public interface IGame {  void play();  
}
//被代理对象
public class Game implements IGame{  @Override  public void play() {  System.out.println("打游戏");  }  
}
//代理类
public class GameProxy implements IGame{  //被代理对象的引用  private IGame game;  public GameProxy(IGame game) {  this.game = game;  }  @Override  public void play() {  //在被代理方法前后增加自定义操作System.out.println("打游戏之前");  game.play();  System.out.println("打游戏之后");  }  
}
IGame game=new Game();  
IGame proxy=new GameProxy(game);  
proxy.play();
//运行结果
//打游戏之前
//打游戏
//打游戏之后

动态代理又分为 JDK 动态代理和 CGLIB 动态代理,JDK 动态代理通过 JDK 提供的 InvocationHandler 类和 Proxy 类实现, CGLIB 动态代理则是通过第三方字节码生成库。因为本文主要是介绍代理模式,关键还是在于模式的实现思路,反射只是 Java 提供的语法功能,所以这里只是稍微介绍一下 JDK 动态代理的实现代码:

//实现InvocationHandler接口
public class GameProxy2 implements InvocationHandler {  //被代理对象的引用  private Object obj;  public GameProxy2(Object obj) {  this.obj = obj;  }  @Override  public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {  System.out.println("打游戏之前");  //调用被代理对象的方法Object result = method.invoke(obj, args);  System.out.println("打游戏之后");  return result;  }  
}
IGame game=new Game();  
GameProxy2 proxy=new GameProxy2(game);  
IGame proxyGame = (IGame) Proxy.newProxyInstance(game.getClass().getClassLoader(), game.getClass().getInterfaces(), proxy);  
proxyGame.play();

代理模式的优点:在不需要修改服务类的基础上,对服务类进行访问控制。

缺点:使得代码复杂化。

http://www.yayakq.cn/news/129213/

相关文章:

  • 北京朝阳双桥网站建设济南建网站
  • 做网站要备案吗 要几天wordpress网站接入qq
  • 公司及企业如何建立自己的购物网站河北邢台
  • 如何制作网站?女生学大数据很累吗
  • 常平做网站小程序开发平台哪家性价比高
  • 服装购物商城网站建设淘宝网的网站设计方案
  • 公司网站界面如何设计查询数据的网站怎么做的
  • 建设快卡额度查询网站招聘网站建设销售
  • 大连网站网络公司网站策划书3000
  • 如何用织梦做网站wordpress源码
  • 沙市做网站weisworda站全称
  • 做石油期货看什么网站安卓网页视频下载
  • 云南做商城网站多少钱如何做百度站长绑定网站
  • 手机网站弹出菜单私人信息调查
  • 网站seo搜索引擎的原理是什么营销型网站建设需要注意什么
  • 南通通州建设工程质量监督网站菏泽网站建设
  • 沈阳网站优化网站开发语言查看
  • 网站怎么做动态图片成都工装设计公司排名
  • 做鱫视频网站万创网站建设
  • 乾安网站建设广州增城区最新消息
  • 怎么做网站接口网站架构思维导图
  • 最专业的做网站公司哪家好想开广告图文店在哪学
  • 部分网站建设管理不规范国外网站做freelancer
  • 大丰网站建设广告业网站开发
  • 营销网站建设汉狮电话海淀网站制作
  • 做外贸是网站好还是展会好吕梁市建设局网站
  • 如何做网站走查网架公司需要给设计院提交的资料
  • 广州网站制作(信科网络)专业的建站
  • 国外设计网站app有哪些2016网站谷歌权重
  • 长沙专业网站建设团队商务网站建设与推广实训意义