原创 ArrayList 擴容分析

ArrayList 初始容量 ArrayList 有多個不同的構造方法,不同的構造方法的初始容量是不同的。介紹之前先看下 ArrayList 都有哪些變量 // 默認初始化容量=10 private static final

原创 我是如何進行單元測試的

中發現大家都知道單元測試,也知道 junit,但是沒有人知道怎麼寫 junit 單元測試,在這裏分享我在工作中是怎麼寫單元測試的,供大家參考 什麼是單元測試 首先講講什麼是單元測試,單元測試是指對軟件中的最小可測試單元進行檢查和驗

原创 Hutool——好用的 Java 工具類庫

簡介 Hutool是Hu + tool的自造詞,前者是作者致敬“前任公司”,後者爲工具之意,諧音“糊塗”,寓意追求“萬事都作糊塗觀,無所謂失,無所謂得”的境界 Hutool是一個Java工具包,也只是一個工具包,它幫助我們簡化每一

原创 spring cloud 系列文章(一)Eureka 使用

介紹 關於 Eureka Eureka 是由 Netfix 開發的服務註冊發現組件,後來 spring cloud 將其集成到其子項目 spring-cloud-netfix 中。Eureka 本身是基於 REST 的服務,在集羣

原创 git commit 規範

Git 是市面上最流行的版本控制工具,書寫良好的代碼提交規範能大大提高代碼維護的效率,日常開發中使用 git 提交代碼要求一定要寫 git commit message,否則就無提交代碼,很多公司對 git commit mess

原创 Java CopyOnWrite

CopyOnWrite 介紹 Copy-On-Write簡稱COW,是一種程序設計中的優化策略,其實現思路是大家都在共享一個內容,當有人想要修改內容的時候,就創建一個改內容的副本,對副本進行修改,然後再將原本的引用指向副本,完成內

原创 如何使用 IDEA 進行遠程 debug

前言 在開發中經常遇到這樣一個問題,在本地環境跑的好好的代碼,一上開發服/測試服就有問題,這類問題往往很難在本地復現,也就意味着修復改 bug 是個艱難的過程。今天跟大家分享如何使用 IDEA 遠程 debug 功能解決上述問題

原创 Java按行分割大文件

簡介 工作的時候,需要將一個大的文本文件按行分割成幾個小文件。本來懶得寫,想網上copy一下得了,但是 google 了一遍,找了幾個代碼寫的有點亂,嘗試了之後發現效率太慢了,一個 1000000 行 200M 的文件,按每個文件 200

原创 Spring Boot(三)整合MyBatis,MyBatis Generator

簡介 MyBatis 是一款優秀的持久層框架,它支持定製化 SQL、存儲過程以及高級映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動設置參數以及獲取結果集。MyBatis 可以使用簡單的 XML 或註解來配置和映射原生信息,將

原创 IDEA 調試技巧

簡介 在工作中看到很多水平不錯的程序員,在調試代碼的時候,也還只是停留在單步 debug 的階段。如果能掌握更多的代碼調試技巧,那麼將大大提升工作效率。下面就讓我麼一起來系統的學習下 IDEA 的調試技巧吧。 debug界面介紹 默認設置

原创 關於指令重排序

前言 最近在看 JVM 與高併發相關書籍,發現兩本書都提到了指令重排序優化,但都沒對指令重排序優化進一步解釋,後面在查找了相關資料後纔對指令重排序有個整體的瞭解,此篇文章對該部分知識做一個整理,希望對大家有所幫助 什麼是指令重排序

原创 優雅的接收單個參數的 post 請求

由於spring中沒有提供類似於@RequestParam註解,對單個參數的post請求數據進行綁定的註解,所以當需要根據id刪除記錄的時候,可以使用以下幾種寫法 使用 Map 接收 post 請求參數: @PostMappi

原创 如何測試私有方法

由於 Java 私有方法不允許在類的外部進行訪問,當我們在寫 junit 測試的時候,就無法像測試其他方法一樣通過對象調用的方式對 private 方法進行單獨測試,下面分享測試私有方法的兩種方式 待測類代碼 public cla

原创 Fail-fast 機制分析

fail-fast 機制介紹 fail-fast(快速失敗)機制是集合中比較常見的錯誤檢測機制,防止在對集合進行遍歷的時候,出現意料之外的修改,導致意想不到的結果 fail-fast 產生原因 下面通過一個簡單的例子分析fail-

原创 ElasticSearch——高性能分佈式搜索引擎

Elasticsearch 簡介 Elasticsearch(簡稱 es)是一款高性能的實時分佈式搜索和分析引擎,它可以從海量數據中快速的找到相關信息。作爲一款功能強大的分佈式搜索引擎,支持近實時的存儲、搜索數據。被許多公司廣泛的