观察者模式属于行为型模式。 意图:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 主要解决:一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦合,保证高度的协作。 何时使用:一个对象(目标对象)的状态发生改变,所有的依赖对象(观察者 ...
分类:
其他好文 时间:
2017-06-24 14:46:53
阅读次数:
204
观察者模式也可以理解为发布与订阅的模式,通俗的说 就是定义了对象之间一对多的依赖关系。例如: 杂志和杂志订阅之间的关系,向某家报社订阅杂志,只要他有新的杂志出版,就会给订阅的人送过去。这里的杂志社名称改为 “主题”,订阅者改为 “观察者” 就是观察者模式了 如下图 模式中的角色 抽象主题(Subje ...
分类:
其他好文 时间:
2017-06-24 12:32:51
阅读次数:
86
数据之间的相互关系称为逻辑结构。通常分为四类基本结构: 集合 结构中的数据元素除了同属于一种类型外。别无其他关系。 线性结构 结构中的数据元素之间存在一对一的关系。 树型结构 结构中的数据元素之间存在一对多的关系。 图状结构或网状结构 结构中的数据元素之间存在多对多的关系。 数据结构在计算机中有两种 ...
分类:
编程语言 时间:
2017-06-23 15:50:38
阅读次数:
170
先给出需求:查询用户及用户购买商品信息。 我们由之前的文章知道,这个需求是多对多的。 还是那个终止我们的mybatis所做的不管是之前的一对一还是一对多还是多对多,都只是为了把查询出来的结果(每个字段)做好映射。 好,我们现在sqlyong上把数据查出来,然后做映射。 给出几张表的内容: User表 ...
分类:
其他好文 时间:
2017-06-22 21:49:20
阅读次数:
204
学习设计模式主要是利用早上的时间,习惯于早起,之前学习的一些模式都做了一些记录,基于自己理解的记录。还有一些学习过,没有做记录的,今天就对他们做一个总结。方便自己以后的使用。 所谓的设计模式,是用的多了,方便,符合几大原则,有优点就有缺点,有适用场景就有不适用场景,所以模式是固定的,人的思维是不固定 ...
分类:
其他好文 时间:
2017-06-22 10:16:24
阅读次数:
176
在关系中,或多或少的表之间有复杂的关联关系这里测试一对多关联关系的配置开发步骤就不多说了。直接看一个示例。users用户和shop商品订单表分析:一个用户可以有多个商品订单,一个订单只属于一个用户。这样就构成了一对多的关联关系。这里用的是oracle数据库users和shop数据..
分类:
Web程序 时间:
2017-06-21 20:05:30
阅读次数:
247
摘要: 观察者模式,定义对象之间的一种一对多的依赖关系,当对象的状态发生改变时,所有依赖于它的对象都得到通知并且被自动更新。观察者模式在JDK中有现成的实现,java.util.Obserable。 首先说下需求:通过ftp上传约定格式的文件到服务器指定目录下,应用程序能实时监控该目录下文件变化,如 ...
分类:
编程语言 时间:
2017-06-21 00:54:08
阅读次数:
483
观察者模式 观察者模式定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态上发生变化时,会通知所有观察者对象,使它们能够自动更新自己 1. Subject是对主题的抽象,但具体维护通知对象是在子类ConcreteSubject的实现中,ConcreteSubject ...
分类:
其他好文 时间:
2017-06-20 17:47:20
阅读次数:
217
KVO(Key-Value- Observing): 一对多, 观察者模式,键值观察机制,它提供了观察某 一属性变化的方法,极大简化了代码。 KVO底层实现: - kvo 是基于 runtime 机制实现 - 使用了 isa 混写 isa-swizzling ,当一个对象( 假设是person对象, ...
分类:
其他好文 时间:
2017-06-19 23:23:14
阅读次数:
298
1.范式说明 1.1 第一范式(1NF)列不可再分 所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能同时有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关 ...
分类:
数据库 时间:
2017-06-19 19:48:26
阅读次数:
199