本文提供一個整合資料庫連線、CRUD 操作、分頁邏輯、日期格式化、HTML 編碼與 UBB 標籤轉換的實用 JavaBean 完整原始碼。此類別展示了早期 Java Web 開發中常見的「萬能工具類」設計模式,雖然現代框架已將這些功能模組化,但理解其內部運作對維護舊系統或學習基礎架構仍有價值。
org.gjt.mm.mysql.Driver,舊版驅動類別名)並建立連線query(String sql) 執行查詢,回傳 ResultSetupdate(String sql) 執行增刪改closestmt()、closeconn() 關閉 Statement 與 Connection注意:此實作未使用連線池,且 Exception 僅列印錯誤訊息未拋出,生產環境需改進錯誤處理與資源釋放機制(建議使用 try-with-resources 或 finally 區塊確保關閉)。
toChinese(String s)public String toChinese(String s) {
if (s == null) return null;
try {
return new String(s.getBytes("gb2312"), "ISO8859-1");
} catch (Exception e) {}
return null;
}
早期解決 JSP 頁面(ISO-8859-1)與資料庫(GB2312)編碼不一致的常見手法。現代專案建議全端統一使用 UTF-8,避免此類轉換。
page1(...)根據總筆數、每頁筆數、顯示頁碼數、起始位置等參數,動態產生分頁導航 HTML 連結(包含首頁、上一頁、頁碼、下一頁、末頁)。邏輯包含總頁數計算、當前頁碼區間判斷、URL 參數組裝(page、start、搜尋條件 search、目標檔名 filename)。
GetPath():回傳 "yyyy-MM" 格式,常用於按月份建立目錄或檔名strNowtime():回傳 "yyyy-MM-dd hh:mm:ss" 完整時間戳記HTMLEncode(String Str):將 <、>、換行轉為 <、>、<BR>ebbReplace(String Str, String oldStr, String newStr):通用字串替換實作LCReplace(String Str, String BStr, String EStr, String ReStr):UBB 標籤解析,支援巢狀替換(如 [b]粗體[/b] → <b>粗體</b>),使用 $lichao$ 作為佔位符此 JavaBean 展示了早期 Java Web 開發「大而全」的工具類風格。雖然符合當時快速開發需求,但違反單一職責原則,難以測試與維護。現代開發應遵循模組化、分層架構,將各功能拆分為獨立元件與服務。