Quartz 企業級排程框架入門 (一):核心概念與 HelloWorld 實作
什麼是 Job Scheduling System 負責在預定時間自動執行或通知應用元件的系統。例:每週一 09:30 發送業務報表 Email。 JDK 內
Java IO 體系完整導覽:從流模型、裝飾者模式到 NIO 通道與緩衝區
什麼是 IO IO (Input/Output) 是電腦與外部交換資料的介面。Java 核心庫 java.io 提供全面的 IO 介面:檔案讀寫、標準裝置輸出等
Java 繼承陷阱深度解析:欄位隱藏與多態方法派發的經典面試題
前言 CSDN 上流傳一道經典繼承題目,涉及欄位隱藏與方法覆寫的交互行為。本文透過記憶體模型與 JVM 派發機制,徹底釐清輸出結果背後的原理。 程式碼重現 p
Optimizeit Thread Debugger 核心功能全景解析:執行緒監控、爭用分析與死鎖偵測
前言 Optimizeit Thread Debugger (Borland) 專注於 Java 多執行緒程式的動態分析,透過插桿 JVM 收集執行緒狀態、監視
升級至 J2SE 5.0 的五大核心理由:效能、開發效率與任務關鍵級就緒
前言 J2SE 5.0 (代號 Tiger,2004 年 9 月釋出) 是 Java 平台多年來最大規模的更新之一。Sun 工程師 Calvin Austin
Eclipse 趣味實驗:安裝 C# 外掛編譯執行 .NET 程式碼
前言 純粹為了好玩,嘗試在 Eclipse 中透過法國 Improve Technologies 開發的 C# 外掛,直接編寫、編譯並執行 C# 程式碼。該外掛
SCWCD 1.4 考試重點筆記:EL 與 JSTL 核心標籤庫完整整理
前言 SCWCD 1.4 (考試代碼 310-081) 較 1.3 (080) 新增 Expression Language (EL) 與 JSTL 兩大章節。
加密聊天室專案實戰:UML 設計與 Java 實現完整指南
專案背景 本專案為一個基於 UML 設計、Java 實現的加密聊天室系統。需求與設計文檔已整理發布於 Blog 專欄(共 11 篇),涵蓋系統描述、用例圖、類別
Struts 核心元件解析:DispatchAction 讓單一 Action 處理多重操作
前言 在傳統 Struts 開發中,每個業務操作往往對應一個 Action 類別,導致類別數量膨脹。DispatchAction 透過方法分派機制,讓單一 Ac
JMX 入門實作:Standard MBean HelloWorld 完整範例
前言 Java Management Extensions (JMX) 提供標準化的管理與監控介面。本文透過一個最簡單的 Standard MBean 範例,示
Eclipse 入門實戰筆記(二):JUnit 單元測試與 Tomcat Web 專案部署
前言 承接上篇,本文將介紹 Eclipse 中如何使用 JUnit 進行單元測試,以及如何建立動態 Web 專案並部署至 Tomcat 伺服器。 一、JUni
Eclipse 入門實戰筆記(一):環境建置與首個 Java 專案
前言 Eclipse 作為 Java 開發的主流 IDE,擁有強大的擴充生態系。本文記錄初學者從安裝插件、建立專案、撰寫第一支程式到斷點除錯的完整流程,助你快速
重構筆記:方法層面重構模式 (3) - 解釋變數、分割暫時變數、移除參數賦值、以方法物件取代、替換演算法
承接《重構》書籍方法層面重構手法,本文涵蓋第 5-9 條模式:引入解釋變數、分割暫時變數、移除參數賦值、以方法物件取代方法、替換演算法,附前後代碼對照與完整重構
Eclipse 3.0 JRE 設定陷阱:Installed JREs 未勾選系統庫導致 JDBC 連線失敗
Eclipse 中運行 Java 程式連接 MySQL 拋出 ClassNotFoundException: org.gjt.mm.mysql.Driver,但
JFreeChart 核心物件關係解析:Chart、Plot、Dataset、Renderer 三層架構
JFreeChart 是優秀的開源 2D 圖表庫,但文檔匱乏。本文梳理其核心物件協作關係:JFreeChart 為頂層容器,Plot 負責圖形邏輯,Render
JBuilder 快捷鍵完整速查表:編輯、除錯、導航、視窗管理
JBuilder 經典 IDE 快捷鍵整理,涵蓋說明、編譯、除錯、搜尋、導航、代碼模板、視窗切換等高頻操作,適合維護舊專案或習慣 JBuilder 鍵盤操作的開
Java 反射獲取陣列類型技巧:Array.newInstance 實作範例
在反射調用接受陣列參數的方法時,需構造對應的 Class 物件代表陣列類型。本文示範使用 java.lang.reflect.Array.newInstance