J2EE 規格龐雜,技術選型無銀彈。本文結合 JBoss 3.2 實戰經驗,從商業需求出發,闡述架構決策、框架篩選、開發模式與測試體系四大支柱。
一、結合商業需求選擇合理架構
- 外部數據導入 + 高併發:Entity Bean + Commit Option D (同步資料源) + Read-Only Bean 優化,優於純 JDBC。
- 自有數據 + 高併發:CMP Entity Bean + Local Interface + CMR + Session Facade,效能調優在 Container 層 (JBoss
standardjboss.xml Bean Lock Strategy),避免侵入式 SQL 優化破壞移植性。
- 原則:技術服務業務,拒絕為技術而技術。
二、框架合理選用 — 少而精
| 框架 | 定位 | 選用建議 |
| Struts | Model 2 MVC | 成熟穩定,預留 JSF 整合點 |
| Log4j | 日誌 | 標配,JBoss 內建 |
| realMethods | 全層 J2EE 框架 | 開源轉型,可參考源碼設計模式實現 |
| BC4J | Oracle 元件框架 | Oracle 技術棧首選 |
原則:
- 單一專案 ≤ 3 個核心框架,降低升級/維護成本。
- 研究框架源碼吸收設計精華,必要時剝離適配而非全盤引入。
- 工具輔助 (JBuilder EJB 精靈、Together 建模) 引導正確架構,不可依賴工具掩蓋能力不足。
三、開發模式與團隊協作
- 現實角色:美工、JSP 開發、EJB 開發 (缺乏完整角色分工)。
- 強制:版本控制 (VSS/CVS/SVN)、每日可構建、持續整合雛形。
- 工具鏈三選一:
- Together + JBuilder + VSS + JBoss
- WebSphere Studio 全家桶
- Eclipse/JCreator + Ant + XDoclet
- 手工打包部署可練基本功,但生產環境應自動化。
四、分階段、分類型測試體系
| 階段 | 工具 | 重點 |
| 單元測試 | JUnit | 功能正確性、邊界條件 |
| 整合測試 | OptimizeIt Suite (Profiler/Code Coverage/Thread Debugger) | 記憶體洩漏、線程死鎖、熱點方法 |
| 壓力/效能 | Rational Robot | 併發用戶、回應時間、吞吐量、資源飽和點 |
關鍵洞見:
- Entity Bean 效能高度依賴資料庫表結構設計 (索引、外鍵、分區)。
- 團隊技能提升機制 (Code Review、技術分享、導師制) 決定長期交付質量。
- 上一篇文章: 建造者模式深度解析:組裝複雜物件的藝術
- 下一篇文章: Struts + Hibernate 整合全攻略:安裝、配置、Log4j、實戰代碼
Copyright ©
程式碼之家 All Rights Reserved