摘要: 1.定义 定义对象间一种一对多的依赖关系,使得当每一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。 2.类图 3.代码示例 我们定义一个场景:热水壶在烧开水,小孩和妈妈都关注烧开水的过程,各自有其处理方法。用while死循环一直轮询虽然可以实现这样的场景,但性能上让人无法接受。 为方便阅读全文
posted @ 2016-08-04 10:27 zhaoyanghoo 阅读(243) 评论(0) 编辑
摘要: Bean拷贝工具类性能比较 引言 几年前做过一个项目,接入新的api接口。为了和api实现解耦,决定将api返回的实体类在本地也建一个。这样做有两个好处 1. 可以在api变更字段的时候保持应用稳定性 2. 可以对返回的实体的属性做处理,以提高可读性。例如接口返回long类型的时间戳,则将该字段在本阅读全文
posted @ 2016-07-31 14:37 zhaoyanghoo 阅读(1165) 评论(0) 编辑
摘要: maven生命周期和插件 生命周期 maven的生命周期有三套,互相独立。每个生命周期含有不同阶段,常用如下 clean 清理项目 pre clean 执行清理前需要完成的工作 clean 清理上一次构建生成的文件 post clean 执行清理后需要完成的工作 default 构建项目 valid阅读全文
posted @ 2016-07-30 16:20 zhaoyanghoo 阅读(287) 评论(0) 编辑
摘要: 1.现象: 最近两天在每天的凌晨0:15~20分左右收到报警短息,报警内容: JDBC SQL请求最近三分钟内平均耗时时间过高的报警,监控类型:SQL... 2.分析: 从现象来看 每天凌晨15分,可能是定时任务 sql耗时,很可能是慢查询。根据关键字定位到这条语句 3.验证: 1. 该语句的被调用阅读全文
posted @ 2016-07-24 12:22 zhaoyanghoo 阅读(166) 评论(0) 编辑
摘要: 背景 在某次项目,发现已经将 规则写进.ignore文件,但是对 的修改依然会出现在changelist中。 解决方案 先引用git官网上的描述 gitignore Specifies intentionally untracked files to ignore .gitignore只能忽略那些没阅读全文
posted @ 2016-07-21 13:47 zhaoyanghoo 阅读(257) 评论(0) 编辑
摘要: 1. 概述 工欲善其事 必先利其器。 是非常好用的文本编辑器,可以将它看作是 的进阶。绝大多数Unix系统都会内置 编辑器,vi是文本编辑器,vim是程序编辑器。相比vi,它可以根据文件的类型高亮文本,以方便程序设计。 2. 安装 现在一般unix系统都会安装vim了,如果你的系统真的没有vim,就阅读全文
posted @ 2016-06-28 19:44 zhaoyanghoo 阅读(66) 评论(0) 编辑
摘要: 1.定义 避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。 2.类图 3.代码示例 4.应用场景举例 有多个对象可以处理同一个请求,具体哪个对象处理该请求由运行时刻自动确定。 在不明确指定接收者的情况下,向多个对象中阅读全文
posted @ 2016-06-18 23:02 zhaoyanghoo 阅读(45) 评论(0) 编辑
摘要: 1.概述 在我们设计表的时候,考虑将行数据的创建时间和最后更新时间记录下来是很好的实践。尤其是可能需要做数据同步或者对数据新鲜度有要求的表。举些应用场景,更新距上次更新超过2小时的行数据,或者是将一个月前的订单数据归档等等。我们想把这个的需求丢给数据库服务器管理,而不是在应用程序中对每一条语句设置创阅读全文
posted @ 2016-06-15 17:43 zhaoyanghoo 阅读(12079) 评论(1) 编辑
摘要: 报错信息: Idea 编译报错 javacTask: 源发行版 1.6 需要目标发行版 1.6 解决方案:阅读全文
posted @ 2016-05-24 18:49 zhaoyanghoo 阅读(53) 评论(0) 编辑
摘要: 1.定义 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 2.类图 3.代码示例 4.应用场景举例 一个对象被多个对象使用并且需要修改 类型需要多个对象但是对象的初始化消耗巨大 5.JDK源码中的模式实现 在jdk源码中,凡事实现了Cloneable接口的类均使用了此模式。例如我们阅读全文
posted @ 2016-05-08 15:39 zhaoyanghoo 阅读(70) 评论(0) 编辑