原创 設計模式學習五:迪米特法則

介紹 一個對象應該對其他對象保持最少的瞭解 2.類與類關係越密切,耦合度越大 3.迪米特法則(Demeter Principle)又叫最少知道原則,即一個類對自己依賴的類知道的越少越好。也就是說,對於被依賴的類不管多麼複雜,都

原创 PropertiesFactoryBean 和PreferencesPlaceholderConfigurer 使用properties配置

http://outofmemory.cn/code-snippet/3700/spring-bean-property-inject

原创 Docker學習五:Dockerfile

轉載:https://blog.csdn.net/huangjun0210/article/details/85780802 1. FROM 指定基礎鏡像,並且必須是第一條指令,語法如下: FROM <image> FROM <i

原创 有關學習方法的思考

近來一段時間陸陸續續學習了redis、kafka、quartz、spring源碼以及docker,雖然學習的挺快,但是總感覺並不是很會,在遇到實際的問題時,並沒有深刻的思維去分析,歸根結底是因爲對學習掌握的知識並不深刻,並沒有挖到

原创 併發編程五:interrupt中斷

轉載:https://www.cnblogs.com/jenkov/p/juc_interrupt.html 進階文章(有基礎的可以看看)https://www.cnblogs.com/onlywujun/p/3565082.ht

原创 併發編程十:volatile關鍵字

轉載:https://blog.csdn.net/BushQiang/article/details/81349031 當多個線程進行操作共享數據時,可以保證內存中的數據可見。 相較於 synchronized 是一種較爲輕量級

原创 設計模式學習三:依賴倒置原則

介紹 依賴倒置原則: 1)高層模塊不應該依賴低層模塊 2)抽象不應該依賴細節,細節應該依賴抽象 3)依賴倒置的中心思想是面向接口編程 4)依賴倒置的設計理念:相對於細節的多邊性,抽象的東西要穩定的多,以抽象爲基礎搭建的架構比以細

原创 併發編程八:死鎖

轉載:https://www.cnblogs.com/xujingyang/p/6677160.html 概念:當一個線程永遠地持有一個鎖,並且其他線程都嘗試去獲得這個鎖時。 如果線程A持有鎖L並且想獲得鎖M,線程B持有鎖M並且

原创 併發編程四:wait()和notify()和notifyAll()

轉載:https://www.cnblogs.com/xrq730/p/4853932.html wait()釋放鎖以及notify()不釋放鎖 需求: 線程本身是操作系統中獨立的個體,但是線程與線程之間不是獨立的個體,因爲它們

原创 併發編程學習十一:多線程的休息室WaitSet詳細介紹

轉載;https://www.cnblogs.com/ch-forever/p/10752499.html 結論 所有對象都會有一個wait set,用於存放調用了該對象wait方法之後進入block狀態的線程; 線程被no

原创 設計模式學習四:里氏替換原則

介紹 問題思考: 1)繼承包含這樣一層含義:父類中凡是已經實現好的方法,實際上是在設定規範和契約,雖然它不強制要求所有的子類必須繼承這些契約,但是如果子類對這些已經實現的方法任意修改,就會對整個繼承體系造成破壞。 2)繼承在給程

原创 超賣問題

併發學習中,寫收集些材料,後面些總結 https://www.cnblogs.com/Leo_wl/p/4997645.html https://blog.csdn.net/weixin_38035852/article/deta

原创 設計模式學習二:接口隔離原則

介紹 客戶端不應該依賴她不需要的接口,即一個類對另一個類的依賴應該建立在最小的接口上 舉例 類A通過接口interface1依賴於類B,類C通過interface1依賴類D,如果接口interface1對於類A和類C不是最

原创 不看後悔系列-Spring源碼(六):IOC的資源文件定位、解析和BeanDefinition裝載、註冊

在Spring中關於資源文件的解析和BeanDefinition裝載、註冊是這個方法,目的就是把BeanDefinition放到beanFactory中 /** * Load bean definitions into the