原创 我學習使用五筆的經驗

我是 2021 年短暫學習過五筆,但一直沒有一個比較寬鬆的時間,沒有學會。最近趁換工作間隙重新撿起來,通過這一段時間的學習與使用,目前工作基本可以使用五筆了,算是出師了。遂分享一下我學習使用五筆的經驗。 這篇文章沒有非常詳細的從 0 到 1

原创 我的婚禮踩坑記錄

2022.2.7 號,我和媳婦兒完成了婚禮,結束了正好九年的愛情長跑。 其實最開始也糾結要不要辦婚禮,但發現沒有不辦的理由,就決定辦。從決定辦婚禮到婚禮完成,中間事情還是不少的。做了很多事,也踩了很多坑。寫個流水文,記錄一下,給備婚的同學

原创 Git 筆記:常用命令與原理

一、安裝 Git Windows:下載並安裝 Git. Mac:使用 Homebrew, MacPorts 或者下載 安裝程序。 Linux (Ubuntu, Debian):sudo apt-get install git-core L

原创 JVM 啓動參數設置

公司項目 jdk 版本爲 1.8, JVM 參數是自定義設置的,gradle 中 JVM 配置如下(默認內存爲 8 G): applicationDefaultJvmArgs = ["-Xms1G", "-Xmx2G", "-Xss256k

原创 Java 中的 TreeSet

TreeSet 是一種可有序存放元素的集合,HashSet 是 value 爲固定值的 HashMap,TreeSet 是 value 爲固定值得 TreeMap。 TreeMap ┌───┐ │Map│

原创 自定義全局異常處理器(Java)

正常業務系統中,當前後端分離時,系統即使有未知異常,也要保證接口能返回錯誤提示,也需要根據業務規則制定相應的異常狀態碼和異常提示。所以需要一個全局異常處理器。相關代碼:GitHub 異常 下面是 Java 異常繼承圖:

原创 搭建 Maven 倉庫

如果 jar 包在本地,只能每次手動導入,不太方便。可以使用以下方式搭建一個 Maven 倉庫 1、使用 GitHub Pages 搭建公有倉庫 jar 包本質上是一個靜態文件,所以可以使用 GitHub 來存放,再利用 GitHub Pa

原创 GitHub Open Feign 使用總結

原文地址 公司項目目前使用 SOA 架構(Service-oriented architecture:服務導向架構),每個服務作爲一個單體對外提供接口,服務之間使用 GitHub OpenFeign 調用接口。 服務提供者正常提供接口,把

原创 MySQL 的 SQL 筆記

主鍵 選取主鍵的一個基本原則是:不使用任何業務相關的字段(id)作爲主鍵。修改了主鍵,會造成一系列的影響 類型: 自增整數類型(id):BIGINT NOT NULL AUTO_INCREMENT。 全局唯一 GUID 類型 注意:如果

原创 Java 的參數傳遞

一、傳值和傳址(引用) Java 的參數傳遞分爲傳遞基本數據類型(傳值)和傳遞引用數據類型(傳址) public class Demo { public void fun(Test test, int i) { t

原创 一道算法題:查找數組 arr 中第 k 小的奇數

題目描述 查找數組 arr 中第 k 小的奇數,如果不存在則返回 0. (arr [i] > 0 (i>=0)) 計算出時間複雜度(注意代碼註釋,儘可能不用全排序,不要使⽤庫函數或腳本中已經實現好的排序算法和⼯具,需要⾃⼰實現數據結構和所

原创 接口限流的幾種算法

今天面試遇到一個關於接口限流的問題:設計一個方案,保證每秒只有 10 個請求可以訪問接口。不得不說,此問題可以很好的考察面試高級工程師崗位的候選人的過往經驗。不過很遺憾,我原來並沒有做過這方面的工作。 在自己的知識儲備中,首先想到的是:假如

原创 Java 實現一個自定義分佈式 Session

HTTP 是無狀態協議,所以服務端如果需要記住登錄用戶,就需要維護一個 SessionId(Cookie) - Session 的鍵值對。Session 存放用戶信息對象。用戶信息對象作爲 Session 的一個 Attribute。當瀏覽

原创 廖雪峯 MySQL 筆記

大部分內容總結於 《廖雪峯 SQL 筆記》 主鍵 選取主鍵的一個基本原則是:不使用任何業務相關的字段(id)作爲主鍵。修改了主鍵,會造成一系列的影響 類型: 自增整數類型(id):BIGINT NOT NULL AUTO_INCREMEN

原创 HashMap 常問的 9 個問題

1、HashMap 的數據結構是什麼? HashMap 我們知道 HashMap 的數據結構是數組+鏈表,所以這個問題可以理解爲數組+鏈表有什麼優點? 如果只是數組,就存在數組的缺點,如:需要更長的連續內存空間;擴容更加頻繁;並且刪除操作