什麼是 J2EE?
Java 2 Platform, Enterprise Edition (J2EE) 是一組協調的規範與實踐集合,建立在 J2SE 基礎上,提供開發、部署、管理多層、服務器為中心企業應用的完整解決方案。核心價值:大幅降低多層方案開發部署成本與複雜度,實現快速部署與易於增強的服務。
J2EE 平台五大核心優勢
- 完整 Web 服務支援: JAX-RPC 開發基於 SOAP 的可互操作、可移植 Web 服務,支援 WSDL 描述、異構平台調用。
- 更快面市時間: 容器機制分離業務邏輯與基礎設施 (EJB 容器處理分布式通訊/線程/事務,Servlet 容器處理組件/會話管理),開發者聚焦業務增值。
- 自由選擇 (Write Once, Run Anywhere): 多廠商實現統一標準,Sun 提供 CTS 兼容性測試套件保證可移植性。
- 簡化集成連接: JMS 異步鬆耦合、CORBA 遠程調用緊耦合、JCA 連接 ERP/CRM/財務等企業信息系統 (EIS)。
- 降低 TCO 避免單一廠商鎖定: 綜合上述優勢,縮減總擁有成本。
關鍵技術棧清單
- Web 層:Servlet, JSP, JSTL
- 業務邏輯層:EJB (Session/Entity/Message-Driven Bean)
- 數據持久化:JDBC, JPA (後續版本), JDO
- 企業集成:JMS, JCA, JTA, JNDI, JavaMail
- Web 服務:JAX-RPC, JAXR, SAAJ
- 管理與安全:JMX, JACC, JAAS
- 分布式通訊:CORBA/IIOP (RMI-IIOP)
J2EE 1.4 關鍵增強 (聚焦 Web 服務)
- JAX-RPC 1.1:Servlet/EJB 端點支援,WSDL/SOAP 互操作性。
- JSR 921:Web 服務部署規範。
- WS-I Basic Profile 1.0:平台互操作性認證。
- J2EE Management 1.0 (MEJB + JMX) & Deployment 1.1 API:標準化管理與部署。
- Servlet/JSP 增強:請求監聽器、過濾器、EL 表達式、標籤檔案、簡化部署模型。
- EJB 新特性:Web 服務端點、Timer Service、EJB QL/MDB 增強。
- 部署描述符採用 XML Schema 定義與驗證。
- JCA 入站資源適配器、JMS 可插拔性。
版本選擇指南
| 場景 | 建議 |
| 全新專案、追求最新特性、可接受初期風險 |
J2EE 1.4 SDK 開發,上線部署在商業實現 (2004 年初可用) |
| 2004 年前上線、高可靠/高擴展/高性能關鍵 |
J2EE 1.3 高性能應用服務器 (如 Sun Java System Application Server 7) |
| 現有 1.3 應用遷移 |
向後兼容保證,可直接在 1.4 實現運行 |
學習路徑與資源
- 官網:java.sun.com/j2ee/ 獲取規範、教程、FAQ。
- 實踐:下載 J2EE 1.4 SDK 親自體驗 API。
- 進階:Java BluePrints 最佳實踐指導原則、設計模式、案例。
- 認證:Sun 教育服務提供 SCWCD、SCBCD、SCEA 三大認證體系。
工具生態
常見問題彙總
- J2EE 能否與其他 WS-I 實現互操作?
- 是,前提是對方符合 WS-I 標準。
- Tomcat 與 J2EE SDK 關係?
- Tomcat 為 JSP/Servlet 參考實現,1999 年捐贈 Apache。Sun 重寫整合進 J2EE SDK,但版本間存在差異。Tomcat 受 ASF License 管理,可自由部署重分發。
- J2EE SDK 授權?
- Sun Community Source Licensing。
- 兼容性測試?
- J2EE CTS 包含 5000+ 測試 (1.4 版),通過測試並獲授權才能使用 J2EE 商標。
- 誰需要 J2EE?
- ISV (獲取藍圖)、企業開發者 (聚焦業務邏輯、依賴企業級服務)。