Enterprise JavaBean (EJB) 1.1 規範定義了開發、部署基於事務性、分布式對象應用的伺服器端軟體組件架構。企業可自建組件或採購第三方組件。這些伺服器端組件稱為 Enterprise Bean,駐留在 EJB 容器中,為網絡分布的客戶端提供遠程服務。
客戶端與中間件均以 Java 實現 → 類文件可輕鬆重新部署至最合適主機,擺脫硬件綁定。
| 技術 | 來源 | 定位 | 核心痛點 |
|---|---|---|---|
| CORBA | OMG | 開放標準,解決供應商壟斷 | 編程模型極複雜,廠商規範一致性差,可移植性不及預期 |
| Java RMI (JRMP) | Sun | Java 原生遠程調用 | 僅限 Java 語言互操作 |
| DCOM / MTS (COM+) | Microsoft | Windows 平台組件模型 | 平台鎖定,跨語言困難 |
| EJB | Sun | CORBA 可移植性與複雜性的解決方案 | 早期版本(1.x/2.x)仍過於複雜 |
| 維度 | JavaBean | Enterprise Bean |
|---|---|---|
| 包 | java.beans (J2SE) | javax.ejb (J2EE 擴展) |
| 運行範圍 | 單機、單地址空間(進程內) | 多機、跨地址空間(進程間) |
| 訪問方式 | 本地調用 | 遠程調用(RMI) |
| 典型用途 | GUI 組件、數據傳輸對象 | 分布式業務組件 |
| 部署要求 | 無特殊容器 | 必須部署於 EJB 容器 |
EJB 簡化了分布式對象的開發、部署、訪問。它承接 CORBA 開放標準衣缽,以 Java 原生優勢解決複雜性與可移植性難題,確立了容器托管基礎設施、開發者專注業務的企業級開發範式,為後續 Spring、Java EE 奠定核心基因。