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

做淘宝客网站需要什么要求吗wordpress 点击加微信二维码

做淘宝客网站需要什么要求吗,wordpress 点击加微信二维码,重庆做网站有哪些,实际讲解做钓鱼网站技术组件与设计模式 观察者模式与发布订阅模式的异同 观察者模式它是用于建立一种对象与对象之间的依赖关系,一个对象发生改变时 将自动通知其他对象,其他对象将相应的作出反应. 在观察者模式中发生改变的对象称为观察目标,而被通知的对象称为观察者, 一个观察目标可以应对多个…

 技术组件与设计模式

观察者模式与发布订阅模式的异同

    观察者模式它是用于建立一种对象与对象之间的依赖关系,一个对象发生改变时 将自动通知其他对象,其他对象将相应的作出反应. 在观察者模式中发生改变的对象称为观察目标,而被通知的对象称为观察者, 一个观察目标可以应对多个观察者,而且这些观察者之间可以没有任何相互 联系,可以根据需要增加和删除观察者,使得系统更易于扩展.  

  观察者模式的别名有发布-订阅(Publish/Subscribe)模式, 我们来看一下观察者模 式与发布订阅模式结构上的区别 在设计模式结构上,发布订阅模式继承自观察者模式,是观察者模式的一种 实现的变体。 在设计模式意图上,两者关注点不同,一个关心数据源,一个关心的是事件消息

  观察者模式里,只有两个角色 —— 观察者 + 被观察者; 而发布订阅模式 里,却不仅仅只有发布者和订阅者两个角色,还有一个管理并执行消息队  列的 “经纪人Broker”观察者和被观察者,是松耦合的关系;发布者和订阅者,则完全不存在耦合

观察者模式: 数据源直接通知订阅者发生改变。
发布订阅模式: 数据源告诉第三方(事件通道)发生了改变,第三方再通知
订阅者发生了改变。

Spring中的观察者模式

Spring 基于观察者模式,实现了自身的事件机制也就是事件驱动模型,事件驱动模型通常也被理解成观察者或者发布/ 订阅模型。

spring 事件模型提供如下几个角色
ApplicationEvent ApplicationListener
ApplicationEventPublisher
ApplicationEventMulticaster

事件:ApplicationEvent

是所有事件对象的父类。ApplicationEvent 继承自 jdk EventObject, 所 有的事件都需要继承 ApplicationEvent, 并且通过 source 得到事件源。

public abstract class ApplicationEvent extends EventObject
{
private static final long serialVersionUID =
7099057708183571937L;
private final long timestamp =
System.currentTimeMillis();
public ApplicationEvent(Object source) {
super(source);
}
public final long getTimestamp() {
return this.timestamp;
}
}

Spring 也为我们提供了很多内置事件:

   ContextRefreshEvent ,当 ApplicationContext 容器初始化完成或者被刷新的时候,就会发布该事件。 ContextStartedEvent,当ApplicationContext 启动的时候发布事件 .     ContextStoppedEvent,当 ApplicationContext 容器停止的时候发布事件.RequestHandledEvent,只能用于 DispatcherServlet web 应用, Spring处理用户请求结束后,系统会触发该事件。

事件监听:ApplicationListener

   ApplicationListener( 应用程序事件监听器 ) 继承自 jdk EventListener, 所有
的监听器都要实现这个接口 , 这个接口只有一个 onApplicationEvent() 方法 ,
方法接受一个 ApplicationEvent 或其子类对象作为参数
    在方法体中 , 可以通过不同对 Event 类的判断来进行相应的处理 . 当事件触发时
所有的监听器都会收到消息 , 如果你需要对监听器的接收顺序有要求 , 可是实
现该接口的一个实现 SmartApplicationListener, 通过这个接口可以指定监听
器接收事件的顺序 .
@FunctionalInterface
public interface ApplicationListener<E extends
ApplicationEvent> extends EventListener {
void onApplicationEvent(E var1);
}
   实现了 ApplicationListener 接口之后,需要实现方法 onApplicationEvent(),在容器将所有的 Bean 都初始化完成之后,就会执行 该方法。

事件源:ApplicationEventPublisher

  事件的发布者,封装了事件发布功能方法接口,是 Applicationcontext接口的超类, 事件机制的实现需要三个部分,事件源,事件,事件监听器,在上面介绍的 ApplicationEvent就相当于事件,ApplicationListener相当于事件监听 器,这里的事件源说的就是ApplicationEventPublisher.
public interface ApplicationEventPublisher {
default void publishEvent(ApplicationEvent event) {
this.publishEvent((Object)event);
}void publishEvent(Object var1);
}

事件管理:ApplicationEventMulticaste

用于事件监听器的注册和事件的广播。监听器的注册就是通过它来实现的, 它的作用是把 Applicationcontext 发布的 Event 广播给它的监听器列表。

事件机制工作流程


推荐阅读

领域分解识别服务

技术总体方案设计思路

http://www.dtcms.com/a/413368.html

相关文章:

  • 景安一个空间怎么做多个网站信息公开暨网站建设管理办法
  • 域名没有网站可以备案阿里巴巴网站网络营销的平台
  • 惠州响应式网站建设公司电子商务网站功能设计与分析
  • 查公司查企业用什么网站局域网搭建工具
  • 门户类网站模板网站建设可以先备案嘛
  • 上海网站建设排名公司哪家好建设银行网站登陆二星是什么意思
  • 网站规划与设计案例网站建设网络
  • 网站定制设计价目表2345网址大全浏览器下载
  • 修改网站图标网站安全建设管理制度
  • 做网站什么什么网站建设好与管理在哪就业
  • 网页制作与网站建设试卷百度收录网站链接
  • 建设手机移动网站栖霞网站设计
  • 免费网站建设找哪家微信如何开小程序
  • 北京公司网站建站免费网站软件下载大全动漫
  • html自学优化wordpress调用文章函数
  • 济南 网站定制app模板
  • 网站建设佰首选金手指六阿里大数据官网
  • 开封旅游网站建设项目方案zenme用ps做网站图
  • 简述jsp网站架构ppt模板免费下载 素材第一ppt
  • 网站设计标杆企业网站的网络公司
  • 不用模板怎么建设网站招标信息网
  • 网站如何添加认证联盟招聘网站开发需要多长时间
  • 24小时二手表网站司法局网站建设工作汇报
  • 推广做黄页网站高大上的企业网站欣赏
  • 建设网站课程设计摘要赶集网招聘
  • 中国建设银行网站包头分行淘宝网站建设手机版
  • 亿网互联桂林网站优化价格
  • 快速搭建网站域名绑定设置杭州建设局网站官网
  • 网站服务类型有哪些新闻联播直播 今天
  • 南通网站开发招聘云南建投第五建设有限公司网站