原创 Java Full GC (Ergonomics) 的排查

文章目錄1. Full GC (Ergonomics)1.1 Java 進程一直進行 Full GC1.2 Full GC 的原因1.3 檢查堆佔用2. 代碼檢查3. 解決方式 1. Full GC (Ergonomics) 1.

原创 Java if-else 多重嵌套的優化

文章目錄1. if-else 多重嵌套的問題2. 解決方案2.1 使用 Map 緩存2.2 switch 簡化條件 1. if-else 多重嵌套的問題 項目重構發現代碼中存在類似以下的三重 if-else 嵌套代碼,其中變量 a

原创 MyBatis 分表實踐

文章目錄1. 前言2. 動態創建表2.1 查詢數據庫是否存在目標表2.2 動態創建表2.3 定時創建表3. 數據插入3.1 單條數據插入3.2 批量插入3.3 注意 1. 前言 項目開發接到需求,要求將業務數據按月歸檔,也就是每個

原创 JVM 命令指北(4)-jstack 命令

文章目錄1. 功能簡介2. 使用方式3. 分析注意3.1 線程狀態3.2 線程信息的格式3.3 重點信息 1. 功能簡介 jstack 用於打印出給定的 Java進程ID 或遠程調試服務的線程快照。線程快照是 Java 虛擬機內每

原创 MyBatis 使用的注意事項

文章目錄1. MyBatis 中#{}和${}的區別2. MyBatis-plus 的字段非 null 更新3. MyBatis-plus 使用技巧3.1 自定義 sql 使用條件構造器作爲參數3.2 inSql 子查詢3.3

原创 JVM 直接內存的使用與回收

文章目錄1. 直接內存介紹1.1 簡介1.2 直接內存的回收2. 查看直接內存2.1 API 獲取 MaxDirectMemory 的值2.2 NMT查看 DirectMemory 使用情況 1. 直接內存介紹 1.1 簡介 直接

原创 Java 線程池源碼詳解(2)-ForkJoinPool 源碼解析

文章目錄前言1. ForkJoinPool 的組件1.1 線程池 ForkJoinPool1.1.1 ForkJoinPool 線程池的創建1.1.2 ForkJoinPool 線程池內部重要屬性1.2 工作線程 ForkJoin

原创 JVM 命令指北(5)-jmap 命令

文章目錄1. 功能簡介2. 使用方式3. 基本示例3.1 -heap 選項3.2 -histo 選項3.3 -dump 選項 1. 功能簡介 jmap是 JDK 自帶的工具軟件,可用於生成指定 Java 進程的 Heap Dump

原创 MyBatis-plus 源碼解析

文章目錄前言1. Mapper 對象方法映射爲 SQL 語句2. Mapper 操作數據庫的流程 前言 MyBatis-plus是完全基於MyBatis開發的一個增強工具,是在MyBatis的基礎上做增強的框架,爲簡化開發、提高效

原创 Netty源碼分析(1)-核心組件與架構

文章目錄1. Netty 組件架構2. 事件分發組件2.1 事件循環組 EventLoopGroup2.1.1 事件循環組實例 NioEventLoopGroup2.1.2 事件循環實例 NioEventLoop2.2 連接接收

原创 Reactor 與 Proactor 線程模型

文章目錄1. Reactor 模式1.1 單 Reactor 單線程1.2 單 Reactor 多線程1.3 主從 Reactor 多線程2. Proactor 模式 1. Reactor 模式 Reactor模式也叫 Dispa

原创 curl 使用指北

文章目錄1. 功能簡介2. 參數列表2.1 HTTP 協議相關HTTP 請求方法對應 curl 參數2.2 其他常用3. 使用示例3.1 查看通信過程3.2 POST 提交數據3.3 其他 1. 功能簡介 curl 是用來請求

原创 Java 動態代理的底層原理

文章目錄1. 代理模式2. 動態代理使用3. 動態代理原理 1. 代理模式 代理模式是常用的設計模式之一,其特徵是代理類與被代理類有相同的接口,代理類可以爲被代理類方法執行進行前置後置處理,增強被代理類方法 代理模式的類結構通

原创 TCP 拆包和粘包原因及解決方案 -- TBD

文章目錄1. 拆包和粘包的概念2. 產生拆包和粘包的原因3. 解決方案 1. 拆包和粘包的概念 2. 產生拆包和粘包的原因 3. 解決方案

原创 Java 類加載器源碼解析

文章目錄1. 類加載器的源碼實現1.1 抽象的類加載器 ClassLoader1.2 擴展類加載器 ExtClassLoader1.3 應用程序類加載器 AppClassLoader2. 雙親委託機制的實現 1. 類加載器的源碼實