原创 開發常用小工具類:list集合去重

在平時的項目維護中,我們經常會操作大批量的數據。 比如,我需要把某個excel中所有的手機號複製出來,然後去重。 對於這樣的需求,通過今天分享的這個小工具類,可以輕鬆搞定。 mark一下吧! package com.yangcq.lea

原创 java對象轉map:PropertyUtilsBean#describe方法對象轉Map,爲什麼多餘一個class

通常,我們項目都有一個這樣的工具類:   import org.apache.commons.beanutils.PropertyUtils; import java.util.Map; public class BeanUtils

原创 POI如何揭開excel文件的神祕面紗(POI判斷excel文件格式源碼解析)

要搞清楚POI如何判斷excel文件格式,我們要先搞清楚FileMagic。   FileMagic是什麼呢?看官方解釋: The file magic number, i.e. the file identification base

原创 一看就懂系列:java8流的扁平化/什麼是扁平化流(圖解)

《java8實戰》這本書上,關於劉的扁平化的講解,個人覺得有點費解。我也是讀完,回味了好多遍才理解。 其實我覺得作者的圖解不太直觀,接下來,我會重新畫一張圖,方便大家理解。   什麼是扁平化流,書中是這樣描述的:一言以蔽之,flatMap

原创 根據經緯度計算兩點之間的直線距離(算法)

  Talk is cheap, show me the code.   import lombok.extern.slf4j.Slf4j; /** * 根據經緯度,計算2點之間的直線距離。 * 距離較近的場景,可以使用,誤差較小

原创 阿里Easyexcel開發流程/Spring cloud整合阿里easyexcel(版本2.0.6)

阿里Easyexcel是什麼呢?我們先來看看官方描述:   Java解析、生成Excel比較有名的框架有Apache poi、jxl。但他們都存在一個嚴重的問題就是非常的耗內存,poi有一套SAX模式的API可以一定程度的解決一些內存溢出

原创 Spring Boot支持的配置方式有哪些(深度解析)

Spring Boot支持的配置方式有哪些(深度解析) 有本書上總結了一下,大概有9種配置方式,當然還有其他方式,這裏不再列舉。並且這些配置方式是有優先級的,如果不同的配置方式都配置了同一個配置項,那麼優先級高的勝出。下面我們來具體看。

原创 實現單例模式需要考量的幾個點(思路)

    單例模式是一個老生常談的話題了,如何實現呢?我們這裏不再贅述,我們這裏梳理一下思路,看看設計一個單例模式需要考慮的問題。   1,延遲加載 new操作放在方法內部,不要作爲類的靜態成員變量暴露給調用者。 2,只實例化一次 實例

原创 責任鏈模式實踐之Zuul責任鏈模式

  責任鏈模式實踐之Zuul責任鏈模式   一,什麼是責任鏈模式   責任鏈(Chain of Responsibility)模式的定義:爲了避免請求發送者與多個請求處理者耦合在一起,將所有請求的處理者通過前一對象記住其下一個對象的引用而

原创 Zuul的內置過濾器詳解(源碼解析)

Zuul的內置過濾器詳解(源碼解析) 從技術角度來說,Zuul的的核心就是一系列的過濾器。這些過濾器都實現了ZuulFilter接口。 Zuul的過濾器ZuulFilter與Spring的過濾器Filter有什麼區別?   一,Zuul

原创 MySQL有哪幾種join方式,底層原理是什麼?

網上有相關的文章,總結的挺好,這裏不再重複碼字,這裏提幾個點。   一,Block Nested-Loop join的理解   相對來說Block Nested-Loop join是最難理解的。 Block Nested-Loop joi

原创 redis集羣啓動流程關鍵類源碼分析

redis集羣啓動流程關鍵類(源碼版) 以Spring集成redis爲例來說明,版本是2.8.2。   一,RedisProperties   解析配置文件中的配置項,這個class上加了一個@ConfigurationPropertie

原创 ComponentScan註解的掃描範圍及源碼解析

ComponentScan註解的掃描範圍及源碼解析 一,ComponentScan註解的默認掃描範圍   ComponentScan註解的默認掃描範圍是啓動程序XxxApplication. java所在目錄及其下的所有子包。 爲了方便理

原创 Zookeeper客戶端

Zookeeper客戶端 一,Zookeeper客戶端的主要組件   Zookeeper客戶端主要由以下幾個核心部分組成:   1,Zookeeper實例:客戶端入口。 通過調用Zookeeper構造方法生成客戶端實例。   2,Clie

原创 UUID的含義及實現原理

我先拋出來一個問題:UUID能保證全世界唯一嗎?有哪位大佬有想法,可以留言討論一下,謝謝!   一,UUID的含義       UUID含義是通用唯一識別碼 (Universally Unique Identifier),這是一個軟件建構