原创 SimpleDateFormat併發問題原理分析與正確使用

SimpleDateFormat在多線程場景下會出現問題,JDK中類註釋也給出了明確說明,: * Date formats are not synchronized. * It is recommended to create se

原创 synchronized關鍵字原理解析

引言 瞭解synchronized關鍵字原理之前首先簡單瞭解下JVM的工作內存和主內存的一個概念,這也是導致線程安全性問題的原因所在;線程在操作變量的時候首先會從主內存讀取到自己的工作內存中,然後進行各種操作,操作完成後再load到主內存

原创 java模板方法模式

模板方法是通過繼承實現的複用,通過一個抽象父類來實現;針對不同的業務類型或者算法,在父類中定義一個模板方法,而其中的不同的實現細節由各自的子類去實現;相同的業務邏輯或者算法可以在父類中統一實現,減少代碼量,實現複用,並且也不會改變總體的執

原创 13.Java的Volatile關鍵字

這個Java的volatile關鍵字是用來標示一個Java變量作爲“正在被存儲在主內存的”。更加準確地說意味着,一個volatile變量的每一次讀取都是從計算機的主內存中讀取,而不是從CPU緩存中,並且對於一個volatile變量的每一次

原创 redis做成service來start和stop

最近在linux服務器上安裝redis,啓動redis測試個東東,後來發現設置成服務來啓動,停止更加方便,於是便整理了一下。 首先得有redis的服務文件已經對應的conf文件,名稱分別爲redis和redis.conf(如果是啓動638

原创 elasticsearch將某個集羣的索引導入到另外一個集羣中

在使用elasticsearch的過程中,肯定有很多朋友有過這種需求,就是將某個集羣中的索引導入另外一個集羣中去,這種情況呢,有兩種辦法,一種就是直接拷貝文件,簡單粗暴,但是有很多弊端,比如說文件非常大的話拷貝起來也很麻煩,另外拷貝的過程

原创 builder模式

在日常的開發過程中,有的時候會遇到new一個很多構造函數的對象,此時最簡單的方式就是通過對象的構造函數傳參去構造,另外一種就是可以通過builder模式去構建,兩種方式分別見如下代碼。 傳統構造函數方式構建對象以及實例化: pr

原创 桐桐百天了

   窗外老樹長新芽,院裏枯木又開花;春夏交替,桐桐已經一百天了,此刻的她正躺在我旁邊的小推車裏面睡的正香,可愛極了。    感謝天感謝地讓桐桐平安快樂的度過了人生的100天。在這100天裏,桐桐的臉六月的天,時而大哭,時而歡笑,讓人捉摸

原创 桐桐出生啦

    經過十多個月的漫長等待,終於在2019年1月27日23點20分(陰曆臘月二十二)於北京迎來了一個七斤二兩的小棉襖,老婆太辛苦了,也終於解脫了,感謝,感恩。    女兒出生之後,自然就要取名字,根據生辰八字來算,命裏喜水和木,忌火與

原创 滿月啦

    2019年2月26日桐桐正式滿月了,時光荏苒,亦如白駒過隙,在不知不覺間春回大地,萬物復甦,桐桐滿月,時間都去哪兒了?正如歌詞一樣,記憶中的小腳丫,肉嘟嘟的小嘴巴,滿腦子都是孩子哭了笑了。     這一個月的時間,桐桐也慢慢的長大

原创 ApplicationContextAware和BeanFactoryAware使用理解

1.Spring容器會自動把上下文環境對象調用ApplicationContextAware接口中的setApplicationContext方法;當一個類實現了這個接口之後,這個類就可以非常方便的獲取到ApplicationContex

原创 CAP理論

什麼是CAP cap理論是在2000年7月份由Eric Brewer教授在ACM會議上提出的。兩年後,麻省理工學院的Seth Gilbert和Nancy Lynch從理論上證明了CAP。從此,CAP理論成爲了分佈式計算領域的非常重要的理論

原创 非正常空格,trim不掉的空格(用正常空格replace不掉)

正常空格的Ascii值爲32,這種的可以通過replace或者trim可以替換掉或者刪除掉。 但是最近在項目中發現會出現Ascii值爲160的空格,這種是無法通過replace或者trim處理的,那麼怎麼處理呢?這種的確實不太好處理。 處

原创 查看Linux系統是32位 or 64位

爲什麼要知道系統是32位還是64位的,因爲這個涉及到了JVM堆內存設置的問題,一般32位,限制在1.5G到2G;對於64位,一般是無限制的,但是並不是越大越好,想具體瞭解這塊的具體可以谷歌瞭解;那麼,怎麼查看Linux系統是32位還是64

原创 eclipse導入maven模塊項目步驟以及問題處理

目前很多的maven項目都是分模塊開發的,例如一個項目分爲:web模塊,biz模塊,service模塊,api模塊,job模塊等等,這種情況在導入到eclipse的時候可能會有很多編譯錯誤,下面就教給大家如何處理在eclipse中導入ma