雖然技術棧已演進至 Spring Boot、微服務、Cloud Native 時代,但 EJB 作為企業級 Java 組件模型的奠基之作,其解決的核心問題——分布式事務、安全、持久、遠程訪問、生命週期管理、可移植性——至今仍是所有企業級中間件的必答題。本文系統梳理 EJB 1.1 規範核心內容,還原技術演進邏輯。
| 技術 | 陣營 | 核心特徵 | 致命短板 |
|---|---|---|---|
| CORBA | OMG | 開放標準、IDL、跨語言、高階分布式計算 | 編程模型極複雜、廠商實現不一、可移植性差 |
| RMI/JRMP | Sun | Java 原生、語義清晰 | 僅限 Java 互操作 |
| DCOM/MTS | Microsoft | Windows 生態整合 | 平台鎖定 |
| EJB | Sun | CORBA 可移植性與複雜性的解決方案 | 早期版本仍過重 |
| 維度 | JavaBean | Enterprise Bean |
|---|---|---|
| 包 | java.beans (J2SE) | javax.ejb (J2EE) |
| 運行模型 | 進程內、單地址空間 | 進程間、跨地址空間、多機 |
| 訪問方式 | 本地直接調用 | 遠程 RMI 調用 |
| 典型場景 | GUI 組件、DTO | 分布式業務組件 |
| 容器依賴 | 無 | 強依賴 EJB 容器 |
EJB 確立了「容器管理基礎設施、組件專注業務、聲明式配置、契約保障可移植」的企業級開發範式。這一範式直接傳承至 Spring(IoC 容器、AOP 服務、聲明式事務)、Java EE/CDI、微服務側車模式、Service Mesh。理解 EJB,即理解現代企業級中間件的基因密碼。