首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> J2EE

Java 生態框架與開源項目全景圖譜 (2007 版歷史快照)

     編輯:J2EE

前言

本文為 2007 年左右 Java 開源生態全景總結,記錄了當時主流框架、工具、中間件、應用系統。雖部分專案已停更或被新技術取代,但作為技術演進歷史檔案極具參考價值,助理解現代生態根源。

一、核心開發框架

框架定位核心特性關鍵生態工具
Spring FrameworkJEE 全棧輕量級容器IOC/AOP、統一數據訪問/事務抽象、MVC Web 框架、聲明式事務、AOP 切面、模板模式消除樣板代碼Spring IDE (Eclipse)
WebWork (→ Struts 2)拉取式 MVC、組件化復用XWork 命令模式/攔截器/驗證/類型轉換/OGNL/IOC;WebWork 2 基於 XWork 處理 HTTP;2.2+ 整合 DWR/Dojo AJAXEclipseWork
Struts 1.x經典推式 MVC、標準化標籤庫Servlet/JSP/自定義標籤/資源文件整合、前端控制器、ActionForm 綁定驗證、Tiles 頁面佈局、國際化Struts IDE
Tapestry組件化、HTML 模板分離組件對象模型 (jwcid)、Java/HTML 完全分離、本地化、詳細錯誤報告、JavaBean+XML 配置Spindle (Eclipse)
JSFJava EE 標準組件框架服務端組件樹、狀態管理、事件驅動、驗證/轉換/導航/國際化、雙實現 (RI/MyFaces)、豐富第三方組件庫NetBeans, JDeveloper, Creator, Eclipse WTP
Stripes零配置、約定優於配置無 XML、ActionBean 單類處理、類型轉換/驗證/綁定強大、社區熱心但規模小-
Wicket純 Java 組件、無 XML頁面與組件緊密綁定、Java 邏輯渲染 HTML、組件復用、需深厚 OO 功底-
EasyJWeb國產輕量 MVC、Velocity 模板零配置、頁面代碼完全分離、組件化字段級事件、EasyJWebTools 代碼生成 (支援 Hibernate/Spring 模板)EasyJWebTools

二、持久層 / ORM

框架特點定位差異
Hibernate全自動 ORM、HQL、緩存、代理、可替換 CMP對象中心、高移植性、生態最豐富
iBATIS (→ MyBatis)半自動、手寫 SQL、映射文件、靈活控制SQL 中心、適合複雜查詢/存儲過程/性能極致調優
JDO標準化 ORM API、多數據存儲支援規範先行、實現較少、後被 JPA 取代
TopLink / CocoBase商業/開源 ORM 早期代表後併入 EclipseLink / 淡出主流

工具:Hibernate Synchronizer, Middlegen IDE (Eclipse 代碼生成/逆向工程)

三、模板引擎

  • Velocity: VTL 模板語言、MVC 分離、Turbine 整合、代碼生成、報表、VeloEclipse 插件。
  • FreeMarker: 強大直觀模板語言、編譯快、輸出近靜態 HTML 速度、Servlet 整合、FreeMarker IDE/Eclipse Plugin。

四、任務調度 / 緩存 / 搜索 / 文檔

項目領域核心能力
Quartz調度Job/Trigger/Calendar、集群、J2EE/J2SE 嵌入、標準組件/EJB Job
Lucene全文搜索索引/搜索/分析/過濾 API、高性能、可定制 Analyzer/QueryParser
iTextPDF 生成文本/表格/圖形、只讀文檔、Servlet 輸出控制
EHCache / OSCache / JCS緩存 (未列但隱含)Hibernate 二級緩存主流 Provider

五、應用服務器 / 門戶 / CMS / 企業級應用

專案類型關鍵技術棧
JOnAS開源 J2EE AS (ObjectWeb)Tomcat/Jetty Web 容器、JCA/JDBC/JTA/JMS/JMX/JNDI/JAAS/JavaMail
JFox 3.0輕量級 JavaEE ASOSGi 微內核、EJB3/JPA、JOTM 事務、XAPool 連接池、內建 MVC、模塊化部署、Manager 管理模塊
Liferay企業門戶Struts 前台、XML Portlet 配置、WebService、Lucene 全文檢索、Hibernate、多語言、主流 AS/DB 支援
Jetspeed企業信息門戶 (EIP)Portlet API、Velocity/JSP 佈局、遠程 XML 同步、WML、PSML 持久化、安全/角色/皮膚/個性化、Turbine 整合
OpenCmsCMS 內容管理J2EE、Tomcat 捆綁、多 RDBMS、新模板引擎、JSP 支援
Compiere ERP & CRMERP/CRM多組織/幣種/會計/成本/語言/稅制、快速部署、全模塊覆蓋
Roller WebloggerBlog 系統評論/WYSIWYG/TrackBack/模板/RSS/Blogroll/XML-RPC
XWikiWiki 引擎Hibernate 存儲、附件/版本控制/全文搜索/權限/多語言/XML-RPC/WYSIWYG/PDF 導出/Groovy 腳本

六、開發工具 / IDE / 測試 / 動態語言 / 基礎設施

專案類型備註
EclipseIDE 平台IBM 捐贈、4000 萬美元投入、成熟可擴展架構、插件生態核心
BlueJ教學 IDEMonash 大學、入門級可視化對象交互
JUnit單元測試框架Gamma/Beck、白盒測試、TestCase 繼承、自動化回歸
GroovyJVM 動態語言Python/Ruby/Smalltalk 特性、編譯為 Bytecode、WebWork 2 整合
HSQLDB純 Java 關係數據庫ANSI-92 SQL、JDBC、~160KB、嵌入式/服務器模式
DWRAJAX 遠程調用JS 直接調用 Java 方法、動態生成 JS 代理、Spring 整合、併發/瀏覽器支援優化
ZKAJAX 組件框架XUL 標記/事件驅動/EL/腳本語言 (JS/Ruby/Groovy)/Annotation/數據綁定/Google Maps/FCKeditor/DOJO 整合
JXTAP2P 平台Sun、XML/Java、跨平台/時間/設備 P2P、三層架構 (核心/業務/應用)
EJBCAPKI/CA 系統J2EE、高性能組件化 CA、靈活平台無關

七、項目管理 / 規劃工具

  • XPlanner: Web XP 團隊規劃追蹤、Iteration/User Story/虛擬卡片/工時/效率報表/SOAP 介面。

結語:時光機視角

回顧 2007 年生態,Spring 已成王者、Hibernate 統治 ORM、Struts 1 尚存霸主地位但 Struts 2/WebWork 交替上位、JSF 作為標準艱難推進、Eclipse 確立 IDE 霸權、OSGi (JFox) 開始探索模塊化微內核、AJAX (DWR/ZK) 爆發前夜。今日 Spring Boot/Cloud、Quarkus、Micronaut、Jakarta EE、GraalVM、Kubernetes 原生 Java 已重塑版圖,但IOC/AOP、ORM、MVC、組件化、插件生態、標準化規範等核心思想一脈相承。讀史明智,技術選型勿忘初心。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved