2016年8月10日

摘要: 在UML 2.*的13种图形中,类图是使用频率最高的UML图之一,它表示了类与类之间的关系,帮助开发人员理解系统。它是系统分析和设计阶段的重要产物,也是系统编码和测试的重要模型依据。本文详细介绍了类间的依赖关系,关联关系(聚合、组合等),实现关系以及继承关系的UML表示形式及其在代码中的实现方式。 阅读全文
posted @ 2016-08-10 06:47 郭俊Jason 阅读(3671) 评论(2) 推荐(2) 编辑

2016年8月2日

摘要: 分布式事务与本地事务一样,包含原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。两阶段提交是保证分布式事务中原子性的重要方法。本文重点介绍了两阶段提交的原理,PostgreSQL中两阶段提交接口,以及Java中两阶段提交接口规范JTA的使用方式。 阅读全文
posted @ 2016-08-02 06:52 郭俊Jason 阅读(11588) 评论(0) 推荐(3) 编辑

2016年6月24日

摘要: 本文将介绍常用的线程间通信工具CountDownLatch、CyclicBarrier和Phaser的用法,并结合实例介绍它们各自的适用场景及相同点和不同点。 阅读全文
posted @ 2016-06-24 07:00 郭俊Jason 阅读(2283) 评论(0) 推荐(1) 编辑

2016年6月20日

摘要: 本文将介绍Java多线程开发必不可少的锁和同步机制,同时介绍sleep和wait等常用的暂停线程执行的方法,并详述synchronized的几种使用方式,以及Java中的重入锁(ReentrantLock)和读写锁(ReadWriteLock),之后结合实例分析了重入锁条件变量(Condition)的使用技巧,最后介绍了信号量(Semaphore)的适用场景和使用技巧。 阅读全文
posted @ 2016-06-20 07:19 郭俊Jason 阅读(1571) 评论(3) 推荐(4) 编辑

2016年6月13日

摘要: 提到线程安全,可能大家的第一反应是要确保接口对共享变量的操作要具体原子性。实际上,在多线程编程中我们需要同时关注可见性、顺序性和原子性问题。本篇文章将从这三个问题出发,结合实例详解volatile如何保证可见性及一定程序上保证顺序性,同时例讲synchronized如何同时保证可见性和原子性,最后对比volatile和synchronized的适用场景。 阅读全文
posted @ 2016-06-13 07:33 郭俊Jason 阅读(1145) 评论(6) 推荐(1) 编辑

2016年6月12日

摘要: 本文介绍了观察者模式的概念,UML类图,优缺点,实例分析以及观察者模式(未)遵循的OOP原则。 阅读全文
posted @ 2016-06-12 07:36 郭俊Jason 阅读(2128) 评论(0) 推荐(0) 编辑

2016年6月8日

摘要: 本文介绍了抽象工厂模式的概念,UML类图,优缺点,实现方式以及(未)遵循的OOP原则。同时结合J2EE中常用的DAO实例详解了抽象工厂模式的实现。 阅读全文
posted @ 2016-06-08 07:29 郭俊Jason 阅读(467) 评论(0) 推荐(0) 编辑

2016年6月6日

摘要: 本文结合实例介绍了PostgreSQL的MVCC实现机制,并介绍了PostgreSQL如何通过MVCC保证事务的原子性和隔离性,最后介绍了PostgreSQL如何通过VACUUM机制克服MVCC带来的副作用。 阅读全文
posted @ 2016-06-06 07:17 郭俊Jason 阅读(1958) 评论(2) 推荐(1) 编辑

2016年6月2日

摘要: 本文讲解了设计模式与OOP的三大特性及OOP七项原则间的关系,并讲解了使用设计模式的好处及为何需要使用设计模式。最后通过问答形式讲解了设计模式相关的常见问题 阅读全文
posted @ 2016-06-02 07:39 郭俊Jason 阅读(2618) 评论(1) 推荐(5) 编辑

2016年5月30日

摘要: 本文结合实例详述了策略模式的实现方式,并介绍了如何结合简单工厂模式及Annotation优化策略模式。最后分析了策略模式的优缺点及已(未)遵循的OOP原则 阅读全文
posted @ 2016-05-30 07:34 郭俊Jason 阅读(668) 评论(0) 推荐(0) 编辑

导航