介绍 LongAddr是JDK1.8才有的。其在高并发情况下,相比与AtomicLong的性能更高。本篇主要分析一下其实现原理。并且与Atomi...
本篇聊一聊MyBatis所用到的一些设计模式。 关于MyBatis一些实现原理,可以参考 MyBatis的Mapper机制 1.工场模式 关于工...
对象包装对象,目的是功能增强。 最常见的JAVA IO。 Dubbo,Spring中都有一些wapper类。 上述代码在Dubbo中的具体原理参...
过滤器链,拦截器链 树下应用,挺多的。 ① Struts2的过滤器链 ② Java web的过滤器链 ③ SpringMVC的拦截器链 ④ Du...
目的是共享内存中的某些对象资源 比如棋类游戏,每个棋子可以作为共享资源 我觉得这个模式用的不多,但某些场景非用不可。其实如果让某个程序员设计棋牌...
适配器,属于一种补偿模式,用于补偿原有设计的不足之处。 adapter持有adaptee目标对象的委托,对其调用。或者继承关系。 继承的方式 组...
桥梁模式,我觉得是比较难理解的一个模式,它的定义很简单:将抽象和实现解耦,让它们可以独立变化。深刻理解却不容易。网上有很多案例,但这个模式如果以...
在抽象层方法中,定义一些列的行为骨架。并且设计好执行顺序(不变的流程)。具体的行为实现,由子类完成。 几乎任何一个框架,任何系统在抽象层都要使用...
当某个类的参数过多,构造细节过于复杂时,使用builder模式。build()方法可以做一些参数有效性的校验工作 不太好的地方:Builder类...