本文以 NetBeans IDE 5.5 為平台,重現官方快速入門範例,直觀對比 Java EE 5 與 J2EE 1.4 的開發體驗差異。結論明確:Java EE 5 透過標註驅動、持久化 API 簡化、EJB 3.0 輕量化設計,大幅降低樣板代碼與配置負擔,讓開發者聚焦業務邏輯。
J2EE 1.4 強制實體 Bean、會話 Bean 放入 EJB 模組,Web 模組需透過 JNDI 查詢、大量部署描述符(ejb-jar.xml)配置 CMP 映射與 Finder 方法。
Java EE 5 允許實體類直接置於 Web 模組,容器自動管理持久化,零部署描述符,持久化單元由 persistence.xml 定義,實體類以 @Entity 標註即可完成 OR 映射。
persistence.xml,指定 TopLink Essentials 提供者與 jdbc/sample 資料源。@Entity、@Id、@OneToMany 等標註的 POJO,無 Home/Remote/Local 接口,代碼量銳減 75%。@PersistenceContext 注入 EntityManager,@Resource 注入 UserTransaction,容器接管資源查詢與事務邊界,Servlet 僅含純業務代碼。| 維度 | J2EE 1.4 | Java EE 5 |
|---|---|---|
| 實體類數量(雙表) | 8 個 | 2 個 |
| 部署描述符 | ejb-jar.xml 等多個 | 無 (可選) |
| 資源獲取 | JNDI 手工查詢 | 標註注入 |
| 事務管理 | 手工 begin/commit | 標註/容器管理 |
Java EE 5 不只是規格升級,更是開發模式的範式轉移。對維護舊專案者,漸進式遷移同樣可行;對新專案,擁抱 Java EE 5 意味著更高生產力與更低維護成本。