原创 容器之Zookeeper的使用

    我們使用zookeeper時,都是在Linux上安裝zookeeper,之後啓動時要加入配置文件。     使用docker之後,我們可以直接使用鏡像運行容器,鏡像可以從docker.hub上下載,地址是https://hub.do

原创 Docker之容器日期解決

    將業務應用製作成鏡像,以容器的方式運行之後,發現在容器中獲取的日期不是國內使用的東八區時間,這肯定不行的,應用與時間緊密相關,所以要解決這個問題。     由於我們的應用是基於Springboot的,所以通過Dockerfile的形

原创 SpringFramework之AnnotationAwareOrderComparator

    今天在看Springsecurity(4.3.x.RELEASE)的WebSecurityConfiguration時,看到AnnotationAwareOrderComparator,就寫下自己的感受。     List-1 

原创 openJDK之JDK9的String

    衷心建議讀者閱讀源碼,這篇內容比較簡單。     openJDK9開始,String的底層實現不一樣了,具體內容如下。 1.openJDK8的String     先來看下openJDK8的String的底層,如下圖1.1所示:

原创 Springsecurity之FilterChainProxy

    最近在使用Springsecurity,然後debug代碼時,經常看到FilterChainProxy,所以就在這裏記錄下吧。     Springsecurity版本是4.3.x.RELEASE.     List-1 publi

原创 Springsecurity之AuthenticationEntryPoint

    注意:分析的版本是Springsecurity的4.3.x。     在ExceptionTranslationFilter中使用到AuthenticationEntryPoint,當ExceptionTranslationFilt

原创 Springsecurity之CasAuthenticationFilter

    注:分析的版本是Springsecurity4.3.x.RELEASE     由於用Springsecurity來使用單點登錄,所以看了下CasAuthenticationFilter,記錄下自己的看後結果吧。     先上一張圖

原创 GRASP設計模式

    此文參考了這篇博客,建議讀者閱讀原文。     面向對象(Object-Oriented,OO)是當下軟件開發的主流方法。在OO分析與設計中,我們首先從問題領域中抽象出領域模型,在領域模型中以適當的粒度歸納出相關的類;然後定義各個

原创 Redis之SpringDataRedis對象寫入到Redis中

    業務場景中經常遇到使用Redis作爲緩存,而將對象寫入Redis更是常見的。下面來看下,對象寫入Redis的倆種方式(我之前就知道除了JDK,還有其它的諸如Jackson提供序列化功能,但是JDK之外的其它第三方在方序列化的時候提供

原创 Springsecurity之認證過程簡析

    注:分析的Springsecurity版本是4.3.x,源碼可自行到github上去下載。     先上一張圖,如下圖1.1所示:                                                   

原创 maven之pom.xml如何引入本地的依賴jar

    經常會用到,所以記錄下 如下List-1所示,重點是scope和systemPath的值 scope的值要設置爲system systemPath的值,指向jar的路徑     List-1 <dependency> <gr

原创 vue中使用中央事件總線bus

    vue中父組件向子組件傳值使用props,非父子組件間傳值時可以使用事件總線,或者使用vuex,來看下事件總線的例子。     上代碼,如下: 1、vue-bus.js     List-1 vue-bus.js const in

原创 startUML怎麼畫interface接口

    使用的版本是2.8.1,總是用到,今天記錄下 在class diagram下,左側有interface圖標,先鼠標左鍵選擇,之後鼠標移動到面板上,再左鍵就可以了;或者第二種方式,右側,可以直接右鍵->add->interface

原创 設計之接口行爲的擴展

    接口行爲的擴展,經常面臨這樣的問題,之前已經定義好一個接口,且該接口已經在很多地方使用到,現在我們想讓新增新方法。     如下圖1所示所示,已經定義了接口IVedioMedia,已經有RM和Mpeg實現了它。現在如果在IVedio

原创 Springsecurity之ExceptionTranslationFilter

    Springsecurity的版本是4.3.x,源碼可以在Github上下載。 1、ExceptionTranslationFilter的doFilter  ExceptionTranslationFilter是個異常過濾器,用來