演進脈絡:從 C/S 到 B/S 的框架必然性
客戶/伺服器時代催生開發框架;Web 應用爆發進一步推動框架標準化。現代 Java Web 框架幾乎皆遵循 MVC(Model-View-Controller) 模式:業務邏輯與視圖分離,控制器協調請求流轉。這已成事實標準。
框架共性特徵
- 導航協調:XML 配置、屬性檔、註解等多種方式定義頁面流轉
- 控制器實現差異:EJB 實例化、Java 反射動態調用 Action、攔截器鏈等
- 資料流組織:請求 → 控制器 → 服務層 → DAO → 資料庫 → 領域物件/集合 → JSP/模板引擎渲染
- 開發便利設施:簡化 API、連線池、自動化持久化、AOP 事務、標籤庫、JSF/JSTL 整合
- 擴展整合:JMS、JMX、日誌、審計、安全框架等
企業級 IDE 生態對比
| IDE | 框架支援亮點 | 視覺化建模 |
| Borland JBuilder | 內建 Struts/JSF/JSTL 支援 | Action 設計器:頁面流程圖形化規劃 |
| Eclipse | 插件生態極豐富:MyEclipse、M7、Spring IDE、Hibernate Sync | 視覺化頁面流、Struts 配置圖形化編輯 |
| BEA WebLogic Workshop | 基於 Struts 擴展「頁面流」技術 | JPF 控制器檔 + JSP 視圖,拖曳建立導航邏輯,整體輪廓一目瞭然 |

三大主流框架深度剖析
1. Apache Struts:成熟王者
- 開源、MVC 範式、擴展 Servlet API
- 核心:
ActionServlet + Action/ActionForm/ActionMapping/ActionForward
- 豐富 TagLib(Bean/HTML/Logic/Nested/Template)
- 視圖支援:JSP、XML/XSLT、JSF、Velocity
- 模型支援:JavaBeans、EJB、OJB
- 優勢:文檔全、社群大、人才易得、產品級穩定性最高
2. Spring Framework:輕量級全棧
- 源自 Rod Johnson 實用主義哲學,interface21 演進而來
- 四大支柱:IoC 容器、AOP、可攜式服務抽象(事務/JDBC/JMS)、模板模式簡化 API
- 非侵入式 POJO 開發、聲明式事務、與 Hibernate/iBATIS 無縫整合
- 不只是 Web 框架,是企業級應用完整基礎設施
3. Hibernate:ORM 事實標準
- 物件關聯映射開源方案,LGPL 授權
- 核心價值:消除手寫 SQL/JDBC、透明持久化、自動生成 SQL、跨資料庫移植
- 僅需無參建構子即可成為持久化類
- 適用:Java Swing、Servlet、EJB Session Bean 等各類架構
經典組合:Struts + Spring + Hibernate
- Web 層:Struts 處理請求分發、表單驗證、視圖轉向
- 服務層:Spring 管理業務邏輯 Bean、聲明式事務、AOP 橫切關注點
- 持久層:Hibernate 實作 DAO、透明 ORM、查詢優化
- 此「黃金三角」統治 Java EE 開發超過十年,奠基現代微服務架構演進基因
新興挑戰者與未來展望
- WebWork → Struts 2 合併
- Tapestry:組件化 Web 框架
- JSF:標準化組件模型
- Spring MVC / Spring Boot:新一代主流選擇
- 框架持續演進,核心 MVC 思想與分層架構永不落伍
- 上一篇文章: Java Applet 入門實戰:情人節專屬「星空告白」動畫開發全記錄
- 下一篇文章: 為 Java 應用程式新增關機鉤子:優雅關閉與資源釋放實戰
Copyright ©
程式碼之家 All Rights Reserved