深入理解 MySQL Gap Lock(間隙鎖)機制
什麼是 Gap Lock? 在 InnoDB 索引結構中,Gap(間隙)指可插入新記錄的空隙。Gap Lock 即加在間隙上的鎖;Next-Key Lock 則
使用 FreeBSD 捕獲 PPPoE 帳號密碼(僅供學習研究)
前言 有位朋友拿了一台無線路由器,請我協助找回 PPPoE 的用戶名與密碼。網路上相關教學較為零散,因此整理此文記錄完整流程,嚴禁用於非法用途。 一、安裝 m
Java NIO 核心三大件深度解析:Channel、Buffer、Selector 從原理到實戰
為什麼需要 NIO? 傳統 BIO(Blocking IO)一請求一線程,高併發下線程上下文切換開銷巨大。NIO(New IO / Non-blocking I
HBase WAL (Write Ahead Log) 深度解析:原子性保障、刷盤機制與源碼級調用鏈
WAL 在 HBase 寫入路徑中的定位 Client → Protobuf → HRegionServer.execRegionServerService()
Java IO 實戰:基於文件持久化的用戶註冊/登錄/日誌系統完整實現
項目背景與需求 模擬一個輕量級用戶認證系統,僅使用 Java IO 流與文件持久化,實現: 用戶註冊(用戶名/密碼去重存儲) 用戶登錄(驗證並記錄登錄
Struts 1 vs Struts 2 十大核心差異:從 Action 線程模型到攔截器棧的架構演進
緣起:Struts 2 = Struts 1 + WebWork Struts 2 並非 Struts 1 的簡單升級,而是吸收 WebWork 核心架構後的重
Struts 2 核心三大件全解析:struts.properties、struts.xml 與 Action 開發指南
Struts 2 架構心法:三大核心元素 掌握 Struts 2 只需圍繞三大件展開: 全局屬性文件 struts.properties — 系統級參數,
JUnit「No tests found matching」異常排查:Spring 版本衝突導致測試發現失效
異常現場還原 執行 JUnit 測試時拋出如下堆疊信息: java.lang.Exception: No tests found matching [ {E
SpringMVC 多 DispatcherServlet 配置與 WebApplicationInitializer 代碼化實戰
SpringMVC 多 DispatcherServlet 配置與 WebApplicationInitializer 代碼化實戰 傳統 web.xml 多
Java Scanner 與 BufferedReader 差異深度解析:避開 nextLine() 陷阱與效能選型指南
前言:輸入處理的兩大核心工具 在 Java 開發中,從控制台或文件讀取輸入是基礎且高頻的操作。java.util.Scanner 與 java.io.Buffe
Struts 2.5 通配符映射 Action 方法常見錯誤與 allowed-methods 解決
Struts 2.5 通配符映射 Action 方法常見錯誤與 allowed-methods 解決 典型配置與報錯 <package name=sh
IntelliJ IDEA 專案推送到 Gitee (Git@OSC) 完整操作指南
IntelliJ IDEA 專案推送到 Gitee (Git@OSC) 完整操作指南 前提條件 已在 Gitee 創建倉庫,獲取 HTTP/SSH 地址:h
Integer 緩存機制揭秘:-128 到 127 之間 == 比較為何為 true
Integer 緩存機制揭秘:-128 到 127 之間 == 比較為何為 true 現象驗證 Integer a = -129, a1 = -129;
Activiti 5.19.0 核心配置入門指南(一):引擎構建、數據庫、表結構
Activiti 5.19.0 核心配置入門指南(一):引擎構建、數據庫、表結構 運行前提 JDK 6+,Eclipse Kepler+ 標注 EXPERI
Java 實現文件變更監控:基於 Apache Commons IO 的 Spring 整合方案
Java 實現文件變更監控:基於 Apache Commons IO 的 Spring 整合方案 在企業級應用中,常需監控特定目錄下的配置文件、上傳文件或日誌文
SSH 整合報錯:Java 8 + Spring 3 導致 asm ClassReader 非法參數異常
SSH 整合報錯:Java 8 + Spring 3 導致 asm ClassReader 非法參數異常 異常堆棧 Unable to instantiate