原创 亨元模式學習

在面向對象的程序設計語言看來,一切事務都被描述成對象(Object)。  對象擁有狀態(屬性)和行爲(方法),我們將具有相同行爲的對象抽象爲類(Cl

原创 Elasticsearch 遇到的問題彙總

前段時間一直在研究ES(Elasticsearch簡稱)集羣,故難免會遇到一些問題,現就遇到的問題做下深入的分析和總結。在分析之前我們先對ES集羣中涉及到的關鍵名詞進行了解。 一 ES集羣比較重要名詞解釋    1)sh

原创 scala學習--可擴展的語言

     從名稱可知“可擴展的語言”說明scala確實有它的強大之處-可擴展性,故scala應用範圍很廣,從簡單的腳本到構建大型系統。   scala增加的新類型        引入 BigInt類型(從scala.BigInt引入,其實

原创 開發中常用到的正則表達式

正則表達式用於字符串處理、表單驗證等場合,實用高效。現將一些常用的表達式收集於此,以備不時之需。 匹配中文字符的正則表達式: [\u4e00-\u9fa5] 評註:匹配中文還真是個頭疼的事,有了這個表達式就好辦了 匹配雙字節字符(包括漢字

原创 設計模式之裝飾者模式

此模式動態將職責附加到對象上,若要擴展功能,裝飾者提供了比繼承更具彈性的代替方案,以一圖一概括。 要點 1. 裝飾者和被裝飾對象有相同的超類型。 2. 可以用一個或多個裝飾者包裝一個對象。 3. 裝飾者可以在所委託被裝飾者的行爲之前

原创 設計模式之代理模式

代理模式的結構   所謂代理,就是一個人或者機構代表另一個人或者機構採取行動。在一些情況下,一個客戶不想或者不能夠直接引用一個對象,而代理對象可以在客戶端和目標對象之間起到中介的作用。 代理模式類圖如下: 在代理模式中的三種角色:   

原创 java-開放—封閉原則

我們日常用的手機軟件隔上一段時間就會有新的版本更新,在java web 系統開發中我們應該支持可擴展原則——這就是我今天要說的開放-封閉原則,先來說明下在開發中何爲開放何爲封閉。 開發-封閉原則其實是有兩個特徵:          1、對

原创 依賴倒轉原則學習

依賴倒置原則(Dependence Inversion Principle) 1、依賴倒置原則的定義     1)上層模塊不應該依賴於底層模塊,它們都應該依賴於抽象。     2)抽象不應該依賴於細節,細節應該依賴於抽象,要針對接口編程

原创 mapreduce自定義輸入

驅動類 import java.io.IOException;  import java.net.URI;    import javax.xml.soap.Text;    import org.apache.hadoop.conf.