原创 Java——二維碼

使用zxing生成二維碼 引入zxing依賴庫: <dependency> <groupId>com.google.zxing</groupId> <artifactId>core</artifactId>

原创 ImageImagick——CentOS7和Windows平臺的安裝

#CentOS 7 (一)編譯安裝ImageImagick軟件: # 1. 下載源碼 wget https://www.imagemagick.org/download/ImageMagick.tar.gz # 2. 解壓縮 t

原创 Java——Log4j1與Log4j2

1. Log4j 1 引入Log4j: <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.1

原创 DataBinding(一)基礎

1. 導入 在module的build.gradle中聲明 android { dataBinding { enabled true } } 如果依賴庫中使用了DataBinding,則module

原创 緩存基礎概念

1 緩存穿透 緩存穿透指的是用戶不斷對緩存和數據庫中都沒有的數據發起請求,例如id爲負數或特別大的數,導致數據庫壓力過大。穿透可以想象成幽靈穿過牆壁一樣,什麼都沒有碰到,就像數據庫和緩存都沒有命中。 一般情況下不會發生緩存穿透,較

原创 設計模式之適配器模式

接口或方法不兼容的時候,中間添加一個適配器用來間接調用目標方法。 假設我們現在有一個Normal類 class Normal { public void action() { System.out.prin

原创 設計模式之命令模式

命令模式:將一個請求封裝成一個對象,從而可以使用不同的請求對客戶端進行參數化,還可以記錄請求日誌和撤銷請求。 當我們發出一個或者多個請求的時候,如果請求的接收者和執行者重合的話,會導致職責過重,難以對請求進行管理。如果將請求接收者

原创 設計模式之迭代器模式

迭代器模式:在不暴露一個聚合對象的內部表示的情況下,提供一種方法來按順序訪問該對象中的各個元素。 抽象出一個聚合類,該類提供一個方法iterator()返回這個聚合類對應的迭代器: public interface Aggrega

原创 Dagger2

Dependency Injection Dependency指的是一個可以用的對象,也叫服務。Injection指的是把依賴傳遞給需要使用它的dependent對象,也叫客戶端。服務是客戶端狀態的一部分。 依賴注入模式的基本要求

原创 Android動畫之屬性動畫

屬性動畫可以在以下幾個方面對動畫進行設置: Duration:動畫持續時間,默認是300ms。 Time interpolation:插值器,可以指定屬性值如何根據動畫當前播放時間進行變換。 Repeat count and b

原创 設計模式之組合模式

組合模式可以用在樹狀結構的組合當中,把上下級對象抽象出一個基類,通過這個基類可以實現帶分支的父節點,也可以實現單個末端節點。 基類用來提供添加和刪除子分支的方法,儘管末端節點不需要添加分支,但還是把編輯子分支的方法統一放到基類當中

原创 WebView整理

顯示兼容性 首先明確一下兩個重要概念: 1. 視窗(viewport):視窗就是網頁可見的矩形區域,可以指定大小和縮放比例等屬性。最重要屬性是視窗的寬度,這個寬度是從網頁的角度來看水平方向上所有可用的像素總數。 2. 屏幕密度

原创 設計模式之訪問者模式

訪問者模式(Visitor Pattern):在不改變某對象結構中元素的前提下,定義作用於這些元素的新操作。 訪問者模式適用於數據結構相對穩定的系統,可以把數據結構和作用於結構上的操作解耦,使操作集合可以相對自由地變化。一種操作就

原创 OkHttp整理

導入 compile 'com.squareup.okhttp3:okhttp:3.8.1' 混淆: -dontwarn okio.** -dontwarn javax.annotation.Nullable -dontwarn

原创 Java+UEditor

首先到UEditor官網下載JSP版本的壓縮包,目前是停留在了1.4.3.3版本。 下載完成後解壓縮,把ueditor目錄放到項目中,例如放到webapp目錄下的/static/ueditor,注意要配置靜態資源訪問路徑,保證