
介紹 LongAddr是JDK1.8才有的。其在高并發(fā)情況下,相比與AtomicLong的性能更高。本篇主要分析一下其實(shí)現(xiàn)原理。并且與Atomi...
本篇聊一聊MyBatis所用到的一些設(shè)計(jì)模式。 關(guān)于MyBatis一些實(shí)現(xiàn)原理,可以參考 MyBatis的Mapper機(jī)制 1.工場模式 關(guān)于工...
對象包裝對象,目的是功能增強(qiáng)。 最常見的JAVA IO。 Dubbo,Spring中都有一些wapper類。 上述代碼在Dubbo中的具體原理參...
過濾器鏈,攔截器鏈 樹下應(yīng)用,挺多的。 ① Struts2的過濾器鏈 ② Java web的過濾器鏈 ③ SpringMVC的攔截器鏈 ④ Du...
目的是共享內(nèi)存中的某些對象資源 比如棋類游戲,每個(gè)棋子可以作為共享資源 我覺得這個(gè)模式用的不多,但某些場景非用不可。其實(shí)如果讓某個(gè)程序員設(shè)計(jì)棋牌...
適配器,屬于一種補(bǔ)償模式,用于補(bǔ)償原有設(shè)計(jì)的不足之處。 adapter持有adaptee目標(biāo)對象的委托,對其調(diào)用。或者繼承關(guān)系。 繼承的方式 組...
橋梁模式,我覺得是比較難理解的一個(gè)模式,它的定義很簡單:將抽象和實(shí)現(xiàn)解耦,讓它們可以獨(dú)立變化。深刻理解卻不容易。網(wǎng)上有很多案例,但這個(gè)模式如果以...
在抽象層方法中,定義一些列的行為骨架。并且設(shè)計(jì)好執(zhí)行順序(不變的流程)。具體的行為實(shí)現(xiàn),由子類完成。 幾乎任何一個(gè)框架,任何系統(tǒng)在抽象層都要使用...
當(dāng)某個(gè)類的參數(shù)過多,構(gòu)造細(xì)節(jié)過于復(fù)雜時(shí),使用builder模式。build()方法可以做一些參數(shù)有效性的校驗(yàn)工作 不太好的地方:Builder類...