原创 當策略模式遇上Spring

策略模式是一種比較簡單的模式。一般來說,我們可以根據不同的任務類型,來選擇不同的執行策略。 一般策略模式 對於Java語言來說,一般來說可以簡化如下: if ("01".equals(type)) { firstStrate

原创 MySQL中explain用法含義說明

explain是MySQL中執行計劃分析的利器,經常用來分析低效SQL。通過explain我們可以獲取到數據的訪問類型、索引的使用、分區信息等情況。這裏列舉以下explain分析的結果含義。 select_type 表示sele

原创 CSS實現三個button分別居左、居中、居右

上層div使用text-align:center 左右button分別使用float屬性 案例(忽視bootstrap的class) <div style="text-align: center;"> <butto

原创 Java二維碼圖片處理

寫這個篇文章是爲了記錄一下使用Java操作二維碼的一些套路。因爲在做這件事的時候,是遇到了一些問題的,這裏記錄一下,以備不時之需。 需求 根據文字內容生成二維碼,在二維碼中間加入logo圖片,最後將二維碼嵌入外部背景圖中,寫入到指

原创 Dubbo是如何搭上Spring的車的?

今天這篇文章,我們主要來聊一聊Dubbo是如何在Spring環境下運作的。 我們使用Dubbo作服務治理,大部分情況下都是使用Spring框架作爲底層框架的。衆所周知,Spring框架是一款十分優秀的框架,其很大的一個亮點就是支持

原创 Java實現大文件分割與合併

最近有一個需求,要將一個大文件分割爲幾個小文件,然後將小文件再合併還原成大文件。 需求很簡單,實現起來也很簡單。 文件分割,就是讀取大文件,然後按照指定的大小讀取到緩衝區,然後將緩衝區寫入小文件。 文件合併,就是按照順序讀取小文

原创 MySQL字符又亂碼了?快來看一下如何配置字符集吧

MySQL中的字符集字符集和校對規則校對規則命名約定字符集級別及設置服務服務器字符集和校對規則數據庫字符集和校對規則表字符集和校對規則列字符集和校對規則連接字符集和校對規則MySQL字符集修改方法步驟 我們在開發過程中可能會碰到M

原创 從Java的重載/重寫往下看——Java分派

在聊Java分派之前,大家不妨先來看以下代碼的運行結果 public class StaticDispatch { static abstract class Human { } static class

原创 Java URLEncode空格轉換爲“+”號問題

問題 最近做一個URL拼接的函數,需要將用戶名拼接到url上。因爲用戶名可能會有特殊字符,所以需要進行urlencode。這裏我使用的是java的urlEncode方式。問題代碼可以提煉如下: public static void

原创 Dubbo SPI機制(下):自激活擴展與自適應擴展的加載

在上一篇文章中,我們瞭解了Dubbo中一個普通的擴展類是如何加載的。今天,我們繼續Dubbo SPI的旅程,來看一看兩個特殊的擴展:自激活擴展和自適應擴展。 自激活擴展 什麼是自激活擴展? 如果一個擴展點有很多擴展實現,而我們需要

原创 git版本回退方案

最近在開發中遇到了需要git版本回退的問題,特此記錄一下了解到的兩種回退方式。 0. 瞭解提交歷史 git的版本回退需要了解git的提交歷史,拿到你想回退的commitId。該查看命令爲: git log 一般到此就夠了,如果

原创 Dubbo SPI機制(上):一個普通的擴展類是如何加載的

這一篇我們先不講Dubbo中的具體業務邏輯,我們來打基礎,聊一聊Dubbo中的SPI機制。 Dubbo SPI是幹啥的 瞭解一個技術,得先知道它是爲了解決什麼問題而產生的。那麼Dubbo SPI是幹什麼的呢? 按照官網的描述,Du

原创 Dubbo源碼簡析-序言

接下來一段時間我準備寫一系列關於Dubbo源碼的文章,這裏記錄一下最近的一些想法,就當做是序言吧。 爲什麼要寫Dubbo源碼的分析 一個重要的原因是,最近產線上出現了一次Dubbo使用不當造成的問題:震驚!日誌級別居然可能導致Du

原创 Redis緩存刪不掉?查看你的Key序列化方式吧

最近問題有點多,這不,系統中的一個Redis緩存刪不掉了。。。。 問題 我們的應用程序中,存在一個發Queue清緩存的功能。具體實現就是將要刪除的Key作爲Queue的內容傳入,然後調用方法來清除Redis緩存。這個功能是在A系統

原创 震驚!日誌級別居然可能導致Dubbo出現空指針異常

你遇到過Dubbo調用報空指針異常嗎? 下面我要介紹的,是一次真實的產線事件。由於各種因素,導致Dubbo多打印了一行日誌後,出現空指針異常。希望能幫到苦苦尋找答案的你! 備註:文章所用Dubbo版本爲2.6.3 問題復現 Co