原创 先行發生原則(Happens-Before)

本博客系列是學習併發編程過程中的記錄總結。由於文章比較多,寫的時間也比較散,所以我整理了個目錄貼(傳送門),方便查閱。 併發編程系列博客傳送門 本文是《深入Java虛擬機》的部分讀書筆記 如果Java內存模型中所有的有序性都僅靠volat

原创 Mock工具——Easy Mock

官網地址:https://easy-mock.com/docs

原创 線性表結構:單向鏈表

單向鏈表簡介 在底層結構上,單向鏈表通過指針將一組零散的內存塊串聯在一起。其中,我們把內存塊稱爲鏈表的“結點”。爲了將所有的結點串起來,每個鏈表的結點除了存儲數據之外,還需要記錄鏈上的下一個結點的地址。如下圖所示,我們把這個記錄下個結點地址

原创 數據結構和算法傳送門

現在很多計算機從業人員好像都陷入了一個怪圈:對於一些時髦的框架趨之若鶩,但也僅僅是處於會使用的層次。但是對於一些計算機的基礎學科卻不以重視。 其實像數據結構和算法、操作系統和計算機網絡等基礎學科是計算機從業人員必須掌握的知識,而且是學習性價

原创 關於和第三方接口聯調的一點經驗隨筆

在系統開發過程中,我們經常會涉及到和第三方服務聯調的過程。關於和第三方進行接口聯調,稍微說下自己的想法。 1. 接口文檔 接口文檔是我們瞭解第三方接口的基礎。通過接口文檔我們能大致瞭解每個接口的功能,調用的場景是什麼,調用時需要傳哪些字段

原创 線性表結構:數組

什麼是數組 數組(Array)是一種線性表數據結構。它用一組連續的內存空間,來存儲一組具有相同類型的數據。對於數組,你要掌握兩個關鍵點。 1. 線性表 線性表就是數據排成像一條線一樣的結構。每個線性表上的數據最多隻有前和後兩個方向。其實除了

原创 IDEA的一些個性化配置

去除Spring使用@Autowire注入時的黃色波浪 在我們使用@Autowire進行Spring Bean注入時,IDEA會提示黃色波浪線。這是因爲Spring不建議使用這種注入方式,推薦使用構造函數的注入方式。這樣在項目啓動時如果Be

原创 使用SpringBoot進行優雅的數據驗證

JSR-303 規範 在程序進行數據處理之前,對數據進行準確性校驗是我們必須要考慮的事情。儘早發現數據錯誤,不僅可以防止錯誤向核心業務邏輯蔓延,而且這種錯誤非常明顯,容易發現解決。 JSR303 規範(Bean Validation 規範)

原创 複雜度分析:時間複雜度和空間複雜度

本文轉載自:數據結構和算法之美 當我們設計了一個算法以後,往往會從時間和空間這兩個維度來評判這個算法的優劣。執行時間越短,佔用內存空間越小的算法,我們認爲是更優的算法。 這篇文章的主題:複雜度分析就是用來分析算法時間和空間複雜度的。 爲什麼

原创 Spring Boot優雅地處理404異常

背景 在使用SpringBoot的過程中,你肯定遇到過404錯誤。比如下面的代碼: @RestController @RequestMapping(value = "/hello") public class HelloWorldContr

原创 IDEA 2020 配置項目的默認配置

在使用IDEA時相信你肯定遇到過這種情況:打開一個新的項目後,項目的默認配置完全不是自己需要的配置。你不得不再進行一個配置工作,這就屬於重複工作,費時費力。 其實IDEA是有設置打開項目時指定默認配置這個功能的。2019版本的IDEA在fi

原创 當我們開發一個接口時需要注意些什麼

作爲一個 Web 應用開發人員,平時工作中最多的工作場景就是開發接口給前端調用或者關聯繫統調用。接口寫了這麼多,不知道大家有沒有總結過在開發一個接口時需要注意哪些細節。下面列出我自己的一些總結,每次寫接口時都用這些注意點“掃描”下自己的接口

原创 一條查詢語句在MySQL服務端的執行過程

本文轉載自:極客時間 MySQL 服務端結構模型 下面我給出的是 MySQL 的基本架構示意圖,從中你可以清楚地看到 SQL 語句在 MySQL 的各個功能模塊中的執行過程。 大體來說,MySQL 可以分爲 Server 層和存儲引擎層兩

原创 《SQL 必知必會》建表語句

本博客主要整理《MySQL必知必會》中常用的SQL語句。 建表語句 本博客中的SQL全都依賴於下面表結構。 ######################################## # MySQL Crash Course # ht

原创 IDEA 中項目代碼修改後不自動生效,需要執行 mvn clean install 才生效

問題描述 之前項目運行好好的,代碼修改完之後會自動編譯,編程體驗很好。 有一天發現每次修改代碼後需要重新使用mvn clean install命令重新編譯,異常麻煩。 檢查了 IDEA 的配置,已經配置了自動編譯模式,但是死活不生效,異常鬱