JTable、JTree、JComboBox 等;JComponent 為基類,繼承 Container → 所有 Swing 組件皆為 AWT 容器;開源輕量級 ORM 框架,對 JDBC 進行對象封裝,讓開發者用面向對象思維操作關係數據庫。可替代 EJB CMP 完成持久化,適用於 Java SE 客戶端、Servlet/JSP Web 應用、Java EE 全棧。
.hbm.xml):聲明類 ↔ 表、屬性 ↔ 欄位、關聯關係;save()/load()/createQuery() 等,修改對象後 flush() 即同步入庫;| 場景 | 建議 | 理由 |
|---|---|---|
| 極簡配置存儲 (用戶偏好等) | Java Preferences API | 無需資料庫、ORM 過重 |
| 團隊精通 SQL、有強 DBA、存儲過程多 | iBATIS / MyBatis | SQL 為中心,靈活掌控,適合性能極致調優 |
| 企業強制 EJB 架構 / 特殊持久化規範 | 遵循企業標準 | 外部約束優先 |
| 豐富領域模型、需靈活高效持久化、可選關係型 DB | Hibernate (首選) | 自動化程度高、跨資料庫、節省大量樣板碼 |
公司曾因廠商變更被迫遷移資料庫,僅修改 hibernate.cfg.xml 方言與連線參數,業務代碼零修改完成遷移,驗證了「屏蔽資料庫差異」的核心價值。
四大框架 (Struts、Swing、Spring、Hibernate) 介紹完畢。選型原則:業務驅動、團隊匹配、克制慾望、長期可維護。