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

Hibernate 核心與擴充套件 JAR 完整功能對照表

     編輯:Java 相關知識

Hibernate 發布包含 23 個 JAR,令人眼花撩亂。本文詳細分類說明每個 JAR 的用途,幫助開發者依專案需求精準引用,避免 Classpath 膨脹。

✅ 核心必備 (專案必須引用)

JAR 檔名功能說明
hibernate2.jar / hibernate3.jarHibernate 核心程式庫,ORM 引擎、HQL 解析、Session 管理等核心功能。
cglib-asm.jarCGLIB 位元碼操作庫,用於動態產生 POJO 子類別 (Lazy Loading、攔截器),核心依賴。
dom4j.jar高效能 XML 解析器,讀寫映射檔 (*.hbm.xml) 及設定檔,效能優於 JDOM/JAXP。
odmg.jarODMG 3.0 規範介面實作,提供標準化 ODMG API 支援。
commons-collections.jarApache Commons Collections,擴充 Java Collections Framework,Hibernate 內部大量使用。
commons-beanutils.jarJavaBean 內省與屬性操作工具,Hibernate 映射屬性存取仰賴此庫。
commons-lang.jarjava.lang 擴充工具類 (StringUtils, ObjectUtils 等),基礎依賴。
commons-logging.jar日誌門面介面,執行時自動偵測 Log4j / JDK Logging / SimpleLog,建議搭配 Log4j 使用。

🔧 連線池選擇性引用 (四選一即可)

JAR提供者備註
c3p0.jarC3P0成熟穩定,支援 JDBC3 標準。
proxool.jarProxool輕量級,配置簡單。
commons-dbcp.jar + commons-pool.jarApache DBCPTomcat 內建連線池,通用性佳。
(內建)Hibernate 簡易連線池僅適開發測試,生產環境勿用。

重要:若在 EJB 容器 (WebLogic, WebSphere, JBoss) 中運行,必須使用容器提供的 DataSource (JTA),不可使用上述獨立連線池,否則容器管理交易 (CMT) 會失效。

📦 建構/測試/整合專用 (運行期不需部署)

JAR用途
ant.jar, optional.jarAnt 建構腳本編譯 Hibernate 原始碼用。
junit.jar執行 Hibernate 內建單元測試用。
connector.jarJCA 規範,將 Hibernate 部署為 JCA Connector 時需用,通常 App Server 已內建。
jaas.jarJAAS 認證授權,JDK 1.4+ 已內建。
jta.jarJTA 規範介面,App Server 內建。
jdbc2_0-stdext.jarJDBC 2.0 擴充介面 (DataSource 等),App Server/JDK 內建。
xalan.jar, xerces.jar, xml-apis.jarXSLT/XPath 處理器與 XML 解析器 (JAXP 實作),JDK 1.4+ 內建 Crimson/Xalan,通常不需額外引入。

🚀 進階快取/整合選擇性引用

JAR功能
jcs.jarJCS (Java Caching System) 二級快取提供者,若採用 JCS 需引入。
ehcache.jarEhCache 二級快取提供者 (較常用),需另行下載。
log4j-x.x.x.jarLog4j 實作,建議引入以獲得完整日誌功能。

精簡部署建議

典型獨立應用專案 WEB-INF/lib 或 Classpath 僅需:

hibernate3.jar
cglib-asm.jar
dom4j.jar
commons-collections.jar
commons-beanutils.jar
commons-lang.jar
commons-logging.jar
log4j.jar            (若使用 Log4j)
c3p0.jar / dbcp.jar  (選一連線池)
JDBC Driver.jar

其餘 JAR 請勿放入運行時 Classpath,避免版本衝突與記憶體浪費。

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