Java 計算兩日期相差天數的正確姿勢
日期差值計算的常見陷阱與最佳實踐 在 Java 中計算兩個日期相差的天數看似簡單,實則暗藏時區、夏令時間、閏年等陷阱。本文分析常見錯誤做法,提供正確且健壯的解決
手把手教你實作簡易版 Spring IoC 容器
從零開始理解 Spring 核心機制 Spring 框架的核心在於控制反轉(IoC)與依賴注入(DI)。本文透過手寫一個簡易版 IoC 容器,深入剖析 Spri
Java 網路程式設計:URL 類與 URLConnection 完整應用指南
Java 中的 URL 處理核心概念 統一資源定位符(URL,Uniform Resource Locator)是網際網路上資源的唯一地址。在 Java 程式設
Spring Boot 整合 JavaMail 發送郵件完整配置與模板實戰
Spring Boot 通過 spring-boot-starter-mail 自動裝配 JavaMailSender。配置 application.yml:
Java 雙緩衝繪圖技術消除閃爍實現拖拽圖片
雙緩衝原理:在內存 BufferedImage 繪製完整幀,再一次性繪製到屏幕,避免直接繪製導致的閃爍與撕裂。Swing 組件預設開啟雙緩衝 (JCompone
Java return 與 finally 執行順序與返回值覆蓋陷阱
finally 區塊在 try 或 catch 中的 return 執行前必定執行。若 finally 中也有 return,會覆蓋外部返回值;若 finall
Java Collections.sort 列表排序:Comparable 與 Comparator 兩種方式
Collections.sort(List) 需列表元素實現 Comparable<T> 接口,定義自然順序;Collections.sort(Li
JDBC 實現文件與圖片存入數據庫 (BLOB/CLOB)
數據庫存儲二進制文件使用 BLOB (Binary Large Object),大文本使用 CLOB。JDBC 流程:PreparedStatement 設置二
Java 實現 DNS 域名解析:InetAddress 與 DNSJava 庫
JDK 內建 InetAddress 支持基本 A/AAAA 記錄查詢: InetAddress[] addresses = InetAddress.getAl
Tomcat Memcached Session 共享同步配置實戰
解決 Tomcat 集群 Session 共享問題,使用 Memcached 作為分佈式 Session 存儲。需引入 memcached-session-ma
Java AffineTransform 仿射變換:平移、旋轉、縮放與剪切
AffineTransform 表示 2D 仿射變換,以 3x3 矩陣存儲,保持直線與平行關係。常用靜態工廠方法創建基礎變換: getTranslateIns
Jsoup 爬取全國行政區劃數據(省市縣鄉村五級)
使用 Jsoup 解析國家統計局或民政部官網發布的行政區劃代碼頁面,提取省、市、縣、鄉鎮、村五級數據。核心步驟:獲取頁面 Document → 選擇表格行 (t
macOS 安裝 JDK 並配置 JAVA_HOME 環境變量指南
macOS 上安裝 Java 開發環境推薦使用 Homebrew 或官方安裝包。 方式一:Homebrew (推薦管理多版本) ~/.zshrc source
Android ImageView 多點觸控縮放與拖拽實現方案
提供兩種實現 ImageView 手勢縮放拖拽的方案: 方案一:多點觸控監聽器 (Matrix 矩陣變換) imageView.setScaleType(Sca
Java JFreeChart 繪製柱狀圖、餅圖與折線圖實戰
JFreeChart 是經典 Java 圖表庫,需依賴 jfreechart、jcommon。核心流程:創建 Dataset → ChartFactory 生成
Java Applet 多媒體基礎:幻燈片、動畫與音頻播放
Applet 時代的多媒體處理方式,現已過時但原理具參考價值。幻燈片預載圖片數組,滑鼠點擊切換;動畫使用獨立線程循環 repaint() 顯示幀序列;音頻使用
Java 正則表達式工具類:手機、郵箱、QQ、密碼驗證
封裝常用正則驗證為靜態工具類,基於 String.matches(regex) 實現。涵蓋中國大陸手機號、郵箱、QQ 號、密碼強度(6-12位字母數字下劃線特殊