原创 Java線程池ThreadPoolExecutor

前言  多線程一直是Java進階的必修課。在Java中,我們很早就知道可以通過 Thread 類和 Runnable 接口來實現多線程。與之有着類似職責的數據庫連接,也可通過JDBC創建與使用。但我們深知無論是數據庫連接的創建與銷燬,還是線

原创 使用 Mybatis 真心不要偷懶!

本文首發於個人公衆號《andyqian》,期待你的關注!前言  這篇文章非常簡單,沒有什麼高深技術。這些細節用過Mybatis的童鞋都知道。寫這篇文章的緣由是:在最近的工作中,接手了一個外包項目,發現項目中 mapper 文件全部是自動生成

原创 再談Java 生產神器 BTrace

本文首發於個人公衆號《andyqian》,期待你的關注~前言  在上一篇文章《Java 生產神器  BTrace》中我們認識了BTrace,並瞭解到 BTrace 腳本如何編寫,如何執行,不熟悉的朋友,也可以對着文章照葫蘆畫瓢。但對於我們技

原创 Java 基本功 之 CAS

本文首發於個人公衆號《andyqian》,期待你的關注!前言在Java併發編程中,我們經常使用鎖對競爭資源予以併發控制,以解決資源競爭的問題。但無論是使用 Lock 還是 Synchronized,隨着鎖機制的引入,就不可避免的帶來另一個問

原创 重構不完全指南!

本文首發於個人公衆號《andyqian》,期待你的關注!前言  程序員在職業生涯中,不可避免的就是接手老項目,重構歷史項目。事實證明,不論是老項目還是新項目都會遇到這種情況,不信你去看看一週前自己寫的代碼,是不是有很大的改進空間?對於新入行

原创 說說Java 位運算

本文首發於個人微信公衆號《andyqian》,期待你的關注~前言   我們都知道,在計算機世界裏,再複雜,再美的程序,到最後都會變成0與1。也就是我們常說的:二進制。二進制相信大家都很熟悉。與現實世界不同的是,在現實世界裏,我們通常都是用十