jta.jar 標準JTA API必要
commons-collections.jar 集合類 必要
antlr.jar ANother Tool for Language Recognition 必要
asm.jar ASM字節碼庫 若是使用「cglib」 則必要
asm-attrs.jar ASM字節碼庫 若是使用「cglib」 則必要
ehcache.jar EHCache緩存 若是沒有其餘的緩存,則是必要的
cglib.jar CGLIB字節碼解釋器 若是使用「cglib」 則必要
commons-beanutils.jar 提供對java反射和自省API的包裝 對bean操做的類,能夠訪問類的屬性及get和set方法
commons-digester.jar Digester基於規則的XML文檔解析,主要用於XML到java對象的映射
commons-lang.jar 包含了一些數據類型工具類,是java.lang.* 的擴展 必須使用的包
commons-pool.jar,commons-dbcp.jar DBCP數據庫鏈接池,Apache的Jakarta組織開發的,Tomcat4的鏈接池也是DBCP
commons-chain.jar Jakarta Commons的子項目Chain將上述兩個模式組合成一個可複用的Java框架用於描述順序的處理流程 strutsheShale應用框架做爲處理HTTP請求處理的基礎機制
commons-validator.jar 用來幫助進行驗證的工具。好比驗證Email字符串,日期字符串等是否合法。
Burlap.jar 支持ejb,遠程調用Remoting方面的類
buffalo.jar 處理xml的jar包
commons-betwixt.jar 用xml生成報表時須要用到的包
commons-el.jar Apache 組織中一個用來解析 JSP 2.0 的表達式語言的 Java
htmlparser.jar 是一個純的java寫的html解析的庫,它不依賴於其它的java庫文件,主要用於改造或提取html類庫
jakarta-oro.jar java正則表達式所需的包
jaxen.jar 在jdom中使用xpath須要導入jaxen.jar包
mina-core.jar Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 組織一個較新的項目,它爲開發高性能和高可用性的網絡應用程序提供了很是便利的框架
這裏主要介紹的是Hibernate使用到的.jar
Hibernate一共包括了23個jar包,使人眼花繚亂。本文將詳細講解Hibernate每一個jar包的做用,便於你在應用中根據本身的須要進行取捨。
下載Hibernate,例如2.0.3穩定版本,解壓縮,能夠看到一個hibernate2.jar和lib目錄下有22個jar包:
hibernate2.jar:
Hibernate的庫,沒有什麼可說的,必須使用的jar包
cglib-asm.jar:
CGLIB庫,Hibernate用它來實現PO字節碼的動態生成,很是核心的庫,必須使用的jar包
dom4j.jar:
dom4j是一個Java的XML API,相似於jdom,用來讀寫XML文件的。dom4j是一個很是很是優秀的Java XML API,具備性能優異、功能強大和極端易用使用的特色,同時它也是一個開放源代碼的軟件,能夠在SourceForge上找到它。在IBM developerWorks上面能夠找到一篇文章,對主流的Java XML API進行的性能、功能和易用性的評測,dom4j不管在那個方面都是很是出色的。我早在將近兩年以前就開始使用dom4j,直到如今。現在你能夠看到愈來愈多的Java軟件都在使用dom4j來讀寫XML,特別值得一提的是連Sun的JAXM也在用dom4j。這是必須使用的jar包,Hibernate用它來讀寫配置文件。
odmg.jar:
ODMG是一個ORM的規範,Hibernate實現了ODMG規範,這是一個核心的庫,必須使用的jar包。
commons-collections.jar:
Apache Commons包中的一個,包含了一些Apache開發的集合類,功能比java.util.*強大。必須使用的jar包。
commons-beanutils.jar:
Apache Commons包中的一個,包含了一些Bean工具類類。必須使用的jar包。
commons-lang.jar:
Apache Commons包中的一個,包含了一些數據類型工具類,是java.lang.*的擴展。必須使用的jar包。
commons-logging.jar:
Apache Commons包中的一個,包含了日誌功能,必須使用的jar包。這個包自己包含了一個Simple Logger,可是功能很弱。在運行的時候它會先在CLASSPATH找log4j,若是有,就使用log4j,若是沒有,就找JDK1.4帶的java.util.logging,若是也找不到就用Simple Logger。commons-logging.jar的出現是一個歷史的的遺留的遺憾,當初Apache極力遊說Sun把log4j加入JDK1.4,然而JDK1.4項目小組已經接近發佈JDK1.4產品的時間了,所以拒絕了Apache的要求,使用本身的java.util.logging,這個包的功能比log4j差的很遠,性能也通常。後來Apache就開發出來了commons-logging.jar用來兼容兩個logger。所以用commons-logging.jar寫的log程序,底層的Logger是能夠切換的,你能夠選擇log4j,java.util.logging或者它自帶的Simple Logger。不過我仍然強烈建議使用log4j,由於log4j性能很高,log輸出信息時間幾乎等於System.out,而處理一條log平均只須要5us。你能夠在Hibernate的src目錄下找到Hibernate已經爲你準備好了的log4j的配置文件,你只須要到Apache 網站去下載log4j就能夠了。commons-logging.jar也是必須的jar包。
使用Hibernate必須的jar包就是以上的這幾個,剩下的都是可選的。
ant.jar:
Ant編譯工具的jar包,用來編譯Hibernate源代碼的。若是你不許備修改和編譯Hibernate源代碼,那麼就沒有什麼用,可選的jar包
optional.jar:
Ant的一個輔助包。
c3p0.jar:
C3PO是一個數據庫鏈接池,Hibernate能夠配置爲使用C3PO鏈接池。若是你準備用這個鏈接池,就須要這個jar包。
proxool.jar:
也是一個鏈接池,同上。
commons-pool.jar, commons-dbcp.jar:
DBCP數據庫鏈接池,Apache的Jakarta組織開發的,Tomcat4的鏈接池也是DBCP。
實際上Hibernate本身也實現了一個很是很是簡單的數據庫鏈接池,加上上面3個,你實際上能夠在Hibernate上選擇4種不一樣的數據庫鏈接池,選擇哪個看我的的偏好,不過DBCP可能更通用一些。另外強調一點,若是在EJB中使用Hibernate,必定要用App Server的鏈接池,不要用以上4種鏈接池,不然容器管理事務不起做用。
connector.jar:
JCA 規範,若是你在App Server上把Hibernate配置爲Connector的話,就須要這個jar。不過實際上通常App Server確定會帶上這個包,因此其實是多餘的包。
jaas.jar:
JAAS是用來進行權限驗證的,已經包含在JDK1.4裏面了。因此其實是多餘的包。
jcs.jar:
若是你準備在Hibernate中使用JCS的話,那麼必須包括它,不然就不用。
jdbc2_0-stdext.jar:
JDBC2.0的擴展包,通常來講數據庫鏈接池會用上它。不過App Server都會帶上,因此也是多餘的。
jta.jar:
JTA規範,當Hibernate使用JTA的時候須要,不過App Server都會帶上,因此也是多餘的。
junit.jar:
Junit包,當你運行Hibernate自帶的測試代碼的時候須要,不然就不用。
xalan.jar, xerces.jar, xml-apis.jar:
Xerces是XML解析器,Xalan是格式化器,xml-apis其實是JAXP。通常App Server都會帶上,JDK1.4也包含了解析器,不過不是Xerces,是Crimson,效率比較差,不過Hibernate用XML只不過是讀取配置文件,性能沒什麼緊要的,因此也是多餘的。
J2EE的部分jar的做用:
activation.jar:與javaMail有關的jar包,使用javaMail時應與mail.jar一塊兒加入到lib中去,具體負責mail的數據源和類型等
ajaxtags-1.2-beta3.jar:ajax提供的標籤庫,使用戶能像使用jsp普通標籤同樣使用ajax
ant.jar和antlr.jar(能夠刪去):的是ant編譯用的包,在工程中不用添加
asm.jar:Hebernate的包,Hibernate在運行時使用這個代碼生成庫加強類(與java反射機制聯合使用).ASM字節碼庫,cglib.jar包依賴的包。必需的jar包。
axis-ant.jar:是Axis爲支持Ant構建,提供了的文件。該文件包含三個可選任務(task)的定義和實現:axis-wsdl2java,axis-java2wsdl和axis-admin。
cglib-2.1.3.jar:全稱是Code Generation Library,它能夠用來動態繼承Java類或者實現接口,不少知名的開源項目中用到了它.Hibernate用它來實現PO字節碼的動態生成,很是核心的庫,必需的jar包。
chartengineapi.jar:不大清楚,大概是Birt關於字體的類庫。
com.ibm.icu_3.6.1.v10070417.jar:從3.2版本開始,eclipse就增長了一個com.ibm.icu插件,用於加強對多語言的支持。應該是沒用的。
commons-beanutils.jar:下面幾個帶「commons」的都是Apache Commons包中的一個,這裏是被hibernate使用的,估計在工程中沒有所有用到這些包,因此有的應該能刪去。本包包含了一些Bean工具類類,是必須使用的jar包。
commons-cli-1.0.jar:這是一個處理命令的工具。好比main方法輸入的string[]須要解析。你能夠預先定義好參數的規則,而後就能夠調用CLI來解析。
commond-collections.jar:包含了一些Apache開發的集合類,功能比java.util.*強大。必須使用的jar包.
commons-digester.jar:它能方便地將XML文檔所定義的元素轉化爲JAVA對象,其實它的用法有點象棧(固然內在的原理就是那個古老的東西,只是提供了更高一層的封裝)。
commons-discovery-0.2.jar:discovery模式的實現,提供定位與實例化類或其餘資源的通用方法。使用最好的算法獲得接口的全部實現。當用戶想找到全部的提供某一服務的提供商時,這將特別有用
commons-fileupload.jar:jsp的上傳文件功能
commons-io.jar:能夠當作是java.io的擴展
commons-lang.jar:包含了一些數據類型工具類,是java.lang.*的擴展。必須使用的jar包。
commons-pool-1.2.jar:DBCP數據庫鏈接池,Apache的Jakarta組織開發的,Tomcat4的鏈接池也是DBCP。
commons-validator.jar:用來幫助進行驗證的工具。好比驗證Email字符串,日期字符串等是否合法。
coreapi.jar:一種應用的核心 類庫,這裏是Birt的核心包。
dataadapterapi.jar:Birt的有關數據處理的包,具體做用還沒摸清楚。
dom4j-1.4.jar:是一個Java的XML API,相似於jdom,用來讀寫XML文件的。Hibernate使用dom4j解析XML配置文件和XML映射元文件。必需的。
dteapi.jar:Birt的有關數據處理的包,具體做用還沒摸清楚。
dwr.jar:dwr的核心包
ehcache-1.2.jar:Hibernate可使用不一樣cache緩存工具做爲二級緩存。EHCache是缺省的cache緩存工具。若是沒有其它的可選緩存工具,則爲必需的。
engineapi.jar:Birt的有關數據集的包
FCKeditor.jar:支持FCKEditor的圖片文件上傳和瀏覽的包
flute.jar:有關解析css的類庫,誰的還沒弄清楚
freemarker.jar:是webwork的包,FreeMarker容許Java servlet保持圖形設計同應用程序邏輯的分離,這是經過在模板中密封HTML完成的。模板用servlet提供的數據動態地生成HTML。
hibernate3.jar:hibernate3的核心類庫。
itext.jar:java:是用於生成PDF文檔的一個java類庫。經過iText不只能夠生成PDF或rtf的文檔,並且能夠將XML、Html文件轉化爲PDF文件。
iTextAsian.jar:itext中關於亞洲編碼的類庫,在這裏用於中文字體的輸入。
jasperreports.jar:有關報表功能的類庫
javamail.jar:javamail的核心類,提供了mail發送的基本接口。
jaxrpc.jar:(java APIs for XML-Based Remote Procedure Call,JAX-RPC)將XML 類型轉換爲 Java 類型,以確保 Web 服務客戶機和基於 Java 的應用程序之間可以進行平穩的數據交換。是spring須要的。
jenkov-prizetags-bin-3.2.0.jar:一個集許多功能於一身的Jsp標籤庫。其中最受歡迎的Tree Tag,這個Tag能夠爲不一樣節點指定
activation.jar:與javaMail有關的jar包,使用javaMail時應與mail.jar一塊兒加入到lib中去,具體負責mail的數據源和類型等
ajaxtags-1.2-beta3.jar:ajax提供的標籤庫,使用戶能像使用jsp普通標籤同樣使用ajax
ant.jar和antlr.jar(能夠刪去):的是ant編譯用的包,在工程中不用添加
asm.jar:Hebernate的包,Hibernate在運行時使用這個代碼生成庫加強類(與java反射機制聯合使用).ASM字節碼庫,cglib.jar包依賴的包。必需的jar包。
axis-ant.jar:是Axis爲支持Ant構建,提供了的文件。該文件包含三個可選任務(task)的定義和實現:axis-wsdl2java,axis-java2wsdl和axis-admin。
cglib-2.1.3.jar:全稱是Code Generation Library,它能夠用來動態繼承Java類或者實現接口,不少知名的開源項目中用到了它.Hibernate用它來實現PO字節碼的動態生成,很是核心的庫,必需的jar包。
chartengineapi.jar:不大清楚,大概是Birt關於字體的類庫。
com.ibm.icu_3.6.1.v10070417.jar:從3.2版本開始,eclipse就增長了一個com.ibm.icu插件,用於加強對多語言的支持。應該是沒用的。
commons-beanutils.jar:下面幾個帶「commons」的都是Apache Commons包中的一個,這裏是被hibernate使用的,估計在工程中沒有所有用到這些包,因此有的應該能刪去。本包包含了一些Bean工具類類,是必須使用的jar包。
commons-cli-1.0.jar:這是一個處理命令的工具。好比main方法輸入的string[]須要解析。你能夠預先定義好參數的規則,而後就能夠調用CLI來解析。
commond-collections.jar:包含了一些Apache開發的集合類,功能比java.util.*強大。必須使用的jar包.
commons-digester.jar:它能方便地將XML文檔所定義的元素轉化爲JAVA對象,其實它的用法有點象棧(固然內在的原理就是那個古老的東西,只是提供了更高一層的封裝)。
commons-discovery-0.2.jar:discovery模式的實現,提供定位與實例化類或其餘資源的通用方法。使用最好的算法獲得接口的全部實現。當用戶想找到全部的提供某一服務的提供商時,這將特別有用
commons-fileupload.jar:jsp的上傳文件功能
commons-io.jar:能夠當作是java.io的擴展
commons-lang.jar:包含了一些數據類型工具類,是java.lang.*的擴展。必須使用的jar包。
commons-pool-1.2.jar:DBCP數據庫鏈接池,Apache的Jakarta組織開發的,Tomcat4的鏈接池也是DBCP。
commons-validator.jar:用來幫助進行驗證的工具。好比驗證Email字符串,日期字符串等是否合法。
coreapi.jar:一種應用的核心 類庫,這裏是Birt的核心包。
dataadapterapi.jar:Birt的有關數據處理的包,具體做用還沒摸清楚。
dom4j-1.4.jar:是一個Java的XML API,相似於jdom,用來讀寫XML文件的。Hibernate使用dom4j解析XML配置文件和XML映射元文件。必需的。
dteapi.jar:Birt的有關數據處理的包,具體做用還沒摸清楚。
dwr.jar:dwr的核心包
ehcache-1.2.jar:Hibernate可使用不一樣cache緩存工具做爲二級緩存。EHCache是缺省的cache緩存工具。若是沒有其它的可選緩存工具,則爲必需的。
engineapi.jar:Birt的有關數據集的包
FCKeditor.jar:支持FCKEditor的圖片文件上傳和瀏覽的包
flute.jar:有關解析css的類庫,誰的還沒弄清楚
freemarker.jar:是webwork的包,FreeMarker容許Java servlet保持圖形設計同應用程序邏輯的分離,這是經過在模板中密封HTML完成的。模板用servlet提供的數據動態地生成HTML。
hibernate3.jar:hibernate3的核心類庫。
itext.jar:java:是用於生成PDF文檔的一個java類庫。經過iText不只能夠生成PDF或rtf的文檔,並且能夠將XML、Html文件轉化爲PDF文件。
iTextAsian.jar:itext中關於亞洲編碼的類庫,在這裏用於中文字體的輸入。
jasperreports.jar:有關報表功能的類庫
javamail.jar:javamail的核心類,提供了mail發送的基本接口。
jaxrpc.jar:(java APIs for XML-Based Remote Procedure Call,JAX-RPC)將XML 類型轉換爲 Java 類型,以確保 Web 服務客戶機和基於Java 的應用程序之間可以進行平穩的數據交換。是spring須要的。
jenkov-prizetags-bin-3.2.0.jar:一個集許多功能於一身的Jsp標籤庫。其中最受歡迎的Tree Tag,這個Tag能夠爲不一樣節點指定
js.jar:java關於處理javascript的類庫。
jstl.jar:(jsp standard taglib)jstl的核心標籤庫。
jta.jar:java的事務規範,當用到事務處理時是必需的,hebernate中用到。
jxl.jar:(java excel api)是一個韓國人寫的處理Excel的類庫,可以方便的導入和處處Excel。
log4j.jar:日誌包,能夠更加詳細的記錄日誌。可選的。
modelapi.jar:birt關於報表生成的類庫,具體功能有待考究。
mysql-connector-java-5.0.5-bin.jar:mysql的數據庫聯接驅動,符合JCA 規範,若是你在App Server上把Hibernate配置爲mysql數據庫聯接池的話,就須要這個jar。
ognl.jar:OGNL(Object Graph Navigation Language)是一種表達式語言,使用它可使表達式與java對象中的getter和setter屬性綁定,且一個OGNL表達式能夠進行存和取兩方面的操做.ognl.jar是java對ognl的支持,webwork加載的。
org.eclipse.birt.report.viewer.nl1_2.2.0.v20070526-1010.jar:有關Birt的報表生成的類庫
org.eclipse.emf.common_2.2.1.v200702131851.jar: EMF根據ecore建模(能夠和schema的xsd相互轉換)生成強類型的EMF代碼. 這個強類型更強的地方是能夠取得meta信息,從而能夠用於校驗和界面輔助信息的生成.相似於動態bean,屬性也能夠根據名稱動態取得,這幾個類庫都與 Birt的報表生成有關
org.eclipse.emf.ecore.xmi_2.2.2.v200702131851.jar
org.eclipse.emf.ecore_2.2.2.v200702131851.jar
oscore.jar:webwork的一個通用功能類庫
poi.jar:Apache的操做數據轉換的類庫,能導入和處處Excel,與jxl.jar功能重複。
proxool-0.9.0RC3.jar:是一個鏈接池,若是你準備用這個鏈接池,就須要這個jar包。
quartz-1.6.0.jar:一個定時器
rife-continuations.jar:rife原來是一個基於組件模型的Java Web框架,被webwork集成。
saaj.jar:SOAP with Attachments API for Java。能爲java提供按照SOAP規範的收發信息。誰帶進來的有待考究。
sac.jar:Simple API for CSS,java處理CSS的類。
scriptapi.jar:可以在Java中使用腳本語言引擎,在腳本語言和Java之間交換數據。多是Birt引入的。
sitemesh.jar:Sitemesh 是一個基於WEB頁面的佈局、裝飾以及應用整合的開源框架。它能幫助咱們在由大量頁面構成的項目中建立一致的頁面佈局和外觀,如一致的導航條,一致的 banner,一致的版權,等等。它不只僅能處理動態的內容,如jsp,php,asp等產生的內容,它也能處理靜態的內容,使得它的內容也符合你的頁面結構的要求.sitemesh.jar是其類庫
spring.jar:spring的核心類庫。
standard.jar:jstl的類庫,包含TLD 和標記句柄。
velocity-dep.jar: webwork的包。依賴的Velocity類庫
velocity-tools-view.jar:同上
velocity.jar:webwork帶來的包。是一個的模板引擎(template engine)。它容許任何人僅僅簡單的使用模板語言(template language)來引用由java代碼定義的對象。
webwork-2.2.5.jar:webwork的核心類庫。
wsdl4j-1.5.1.jar:一個可擴展的 WSDL 分析框架,WSIF 在此基礎上進行構建。AXIS必需的包。
xwork.jar:包含webwork構建所依賴的xwork類庫,webwork是基於xwork的
activation.jar:與javaMail有關的jar包,使用javaMail時應與mail.jar一塊兒加入到lib中去,具體負責mail的數據源和類型等
ajaxtags-1.2-beta3.jar:ajax提供的標籤庫,使用戶能像使用jsp普通標籤同樣使用ajax
ant.jar和antlr.jar(能夠刪去):的是ant編譯用的包,在工程中不用添加
asm.jar:Hebernate的包,Hibernate在運行時使用這個代碼生成庫加強類(與java反射機制聯合使用).ASM字節碼庫,cglib.jar包依賴的包。必需的jar包。
axis-ant.jar:是Axis爲支持Ant構建,提供了的文件。該文件包含三個可選任務(task)的定義和實現:axis-wsdl2java,axis-java2wsdl和axis-admin。
cglib-2.1.3.jar:全稱是Code Generation Library,它能夠用來動態繼承Java類或者實現接口,不少知名的開源項目中用到了它.Hibernate用它來實現PO字節碼的動態生成,很是核心的庫,必需的jar包。
chartengineapi.jar:不大清楚,大概是Birt關於字體的類庫。
com.ibm.icu_3.6.1.v10070417.jar:從3.2版本開始,eclipse就增長了一個com.ibm.icu插件,用於加強對多語言的支持。應該是沒用的。
commons-beanutils.jar:下面幾個帶「commons」的都是Apache Commons包中的一個,這裏是被hibernate使用的,估計在工程中沒有所有用到這些包,因此有的應該能刪去。本包包含了一些Bean工具類類,是必須使用的jar包。
commons-cli-1.0.jar:這是一個處理命令的工具。好比main方法輸入的string[]須要解析。你能夠預先定義好參數的規則,而後就能夠調用CLI來解析。
commond-collections.jar:包含了一些Apache開發的集合類,功能比java.util.*強大。必須使用的jar包.
commons-digester.jar:它能方便地將XML文檔所定義的元素轉化爲JAVA對象,其實它的用法有點象棧(固然內在的原理就是那個古老的東西,只是提供了更高一層的封裝)。
commons-discovery-0.2.jar:discovery模式的實現,提供定位與實例化類或其餘資源的通用方法。使用最好的算法獲得接口的全部實現。當用戶想找到全部的提供某一服務的提供商時,這將特別有用
commons-fileupload.jar:jsp的上傳文件功能
commons-io.jar:能夠當作是java.io的擴展
commons-lang.jar:包含了一些數據類型工具類,是java.lang.*的擴展。必須使用的jar包。
commons-pool-1.2.jar:DBCP數據庫鏈接池,Apache的Jakarta組織開發的,Tomcat4的鏈接池也是DBCP。
commons-validator.jar:用來幫助進行驗證的工具。好比驗證Email字符串,日期字符串等是否合法。
coreapi.jar:一種應用的核心 類庫,這裏是Birt的核心包。
dataadapterapi.jar:Birt的有關數據處理的包,具體做用還沒摸清楚。
dom4j-1.4.jar:是一個Java的XML API,相似於jdom,用來讀寫XML文件的。Hibernate使用dom4j解析XML配置文件和XML映射元文件。必需的。
dteapi.jar:Birt的有關數據處理的包,具體做用還沒摸清楚。
dwr.jar:dwr的核心包
ehcache-1.2.jar:Hibernate可使用不一樣cache緩存工具做爲二級緩存。EHCache是缺省的cache緩存工具。若是沒有其它的可選緩存工具,則爲必需的。
engineapi.jar:Birt的有關數據集的包
FCKeditor.jar:支持FCKEditor的圖片文件上傳和瀏覽的包
flute.jar:有關解析css的類庫,誰的還沒弄清楚
freemarker.jar:是webwork的包,FreeMarker容許Java servlet保持圖形設計同應用程序邏輯的分離,這是經過在模板中密封HTML完成的。模板用servlet提供的數據動態地生成HTML。
hibernate3.jar:hibernate3的核心類庫。
itext.jar:java:是用於生成PDF文檔的一個java類庫。經過iText不只能夠生成PDF或rtf的文檔,並且能夠將XML、Html文件轉化爲PDF文件。
iTextAsian.jar:itext中關於亞洲編碼的類庫,在這裏用於中文字體的輸入。
jasperreports.jar:有關報表功能的類庫
javamail.jar:javamail的核心類,提供了mail發送的基本接口。
jaxrpc.jar:(java APIs for XML-Based Remote Procedure Call,JAX-RPC)將XML 類型轉換爲 Java 類型,以確保 Web 服務客戶機和基於 Java 的應用程序之間可以進行平穩的數據交換。是spring須要的。
jenkov-prizetags-bin-3.2.0.jar:一個集許多功能於一身的Jsp標籤庫。其中最受歡迎的Tree Tag,這個Tag能夠爲不一樣節點指定
hibernate2.jar:
Hibernate的庫,沒有什麼可說的,必須使用的jar包
cglib-asm.jar:
CGLIB庫,Hibernate用它來實現PO字節碼的動態生成,很是核心的庫,必須使用的jar包
dom4j.jar:
dom4j是一個Java的XML API,相似於jdom,用來讀寫XML文件的。dom4j是一個很是很是優秀的Java XML API,具備性能優異、功能強大和極端易用使用的特色,同時它也是一個開放源代碼的軟件,能夠在SourceForge上找到它。在IBM developerWorks上面能夠找到一篇文章,對主流的Java XML API進行的性能、功能和易用性的評測,dom4j不管在那個方面都是很是出色的。我早在將近兩年以前就開始使用dom4j,直到如今。現在你能夠看到愈來愈多的Java軟件都在使用dom4j來讀寫XML,特別值得一提的是連Sun的JAXM也在用dom4j。這是必須使用的jar包, Hibernate用它來讀寫配置文件。
odmg.jar:
ODMG是一個ORM的規範,Hibernate實現了ODMG規範,這是一個核心的庫,必須使用的jar包。
commons-collections.jar:
Apache Commons包中的一個,包含了一些Apache開發的集合類,功能比java.util.*強大。必須使用的jar包。
commons-beanutils.jar:
Apache Commons包中的一個,包含了一些Bean工具類類。必須使用的jar包。
commons-lang.jar:
Apache Commons包中的一個,包含了一些數據類型工具類,是java.lang.*的擴展。必須使用的jar包。
commons-logging.jar:
Apache Commons包中的一個,包含了日誌功能,必須使用的jar包。這個包自己包含了一個Simple Logger,可是功能很弱。在運行的時候它會先在CLASSPATH找log4j,若是有,就使用log4j,若是沒有,就找JDK1.4帶的 java.util.logging,若是也找不到就用Simple Logger。commons-logging.jar的出現是一個歷史的的遺留的遺憾,當初Apache極力遊說Sun把log4j加入JDK1.4,然而JDK1.4項目小組已經接近發佈JDK1.4產品的時間了,所以拒絕了Apache的要求,使用本身的java.util.logging,這個包的功能比log4j差的很遠,性能也通常。
後來Apache就開發出來了commons-logging.jar用來兼容兩個 logger。所以用commons-logging.jar寫的log程序,底層的Logger是能夠切換的,你能夠選擇log4j, java.util.logging或者它自帶的Simple Logger。不過我仍然強烈建議使用log4j,由於log4j性能很高,log輸出信息時間幾乎等於System.out,而處理一條log平均只須要5us。你能夠在Hibernate的src目錄下找到Hibernate已經爲你準備好了的log4j的配置文件,你只須要到Apache 網站去下載log4j就能夠了。commons-logging.jar也是必須的jar包。
使用Hibernate必須的jar包就是以上的這幾個,剩下的都是可選的。
ant.jar:
Ant編譯工具的jar包,用來編譯Hibernate源代碼的。若是你不許備修改和編譯Hibernate源代碼,那麼就沒有什麼用,可選的jar包
optional.jar:
Ant的一個輔助包。
c3p0.jar:
C3PO是一個數據庫鏈接池,Hibernate能夠配置爲使用C3PO鏈接池。若是你準備用這個鏈接池,就須要這個jar包。
proxool.jar:
也是一個鏈接池,同上。
commons-pool.jar, commons-dbcp.jar:
DBCP數據庫鏈接池,Apache的Jakarta組織開發的,Tomcat4的鏈接池也是DBCP。
實際上Hibernate本身也實現了一個很是很是簡單的數據庫鏈接池,加上上面3個,你實際上能夠在Hibernate上選擇4種不一樣的數據庫鏈接池,選擇哪個看我的的偏好,不過DBCP可能更通用一些。另外強調一點,若是在EJB中使用Hibernate,必定要用App Server的鏈接池,不要用以上4種鏈接池,不然容器管理事務不起做用。
connector.jar:
JCA 規範,若是你在App Server上把Hibernate配置爲Connector的話,就須要這個jar。不過實際上通常App Server確定會帶上這個包,因此其實是多餘的包。
jaas.jar:
JAAS是用來進行權限驗證的,已經包含在JDK1.4裏面了。因此其實是多餘的包。
jcs.jar:
若是你準備在Hibernate中使用JCS的話,那麼必須包括它,不然就不用。
jdbc2_0-stdext.jar:
JDBC2.0的擴展包,通常來講數據庫鏈接池會用上它。不過App Server都會帶上,因此也是多餘的。
jta.jar:
JTA規範,當Hibernate使用JTA的時候須要,不過App Server都會帶上,因此也是多餘的。
junit.jar:
Junit包,當你運行Hibernate自帶的測試代碼的時候須要,不然就不用。
xalan.jar, xerces.jar, xml-apis.jar:
Xerces是XML解析器,Xalan是格式化器,xml-apis其實是JAXP。通常App Server都會帶上,JDK1.4也包含了解析器,不過不是Xerces,是Crimson,效率比較差,不過Hibernate用XML只不過是讀取配置文件,性能沒什麼緊要的,因此也是多餘的。
Jakarta common:
Commons Logging
Jakarta Commons Logging (JCL)提供的是一個日誌(Log)接口(interface),同時兼顧輕量級和不依賴於具體的日誌實現工具。 它提供給中間
件/日誌工具開發者一個簡單的日誌操做抽象,容許程序開發人員使用不一樣的具體日誌實現工具。用戶被假定已熟悉某種日誌實現工具的更高級
別的細節。JCL提供的接口,對其它一些日誌工具,包括Log4J, Avalon LogKit, and JDK 1.4等,進行了簡單的包裝,此接口更接近於Log4J和
LogKit的實現.
Commons-Latka
Commons-Latka 是一個HTTP 功能測試包,用於自動化的QA,驗收和衰減測試.
Commons-Pool
Commons-Pool 提供了通用對象池接口,一個用於建立模塊化對象池的工具包,以及一般的對象池實
Commons-Math
Math 是一個輕量的,自包含的數學和統計組件,解決了許多很是通用但沒有及時出如今Java標準語言中的實踐問題.
Commons-Jelly
Jelly可以把XML轉換成可執行代碼,因此Jelly是一個基於XML與Java的腳本和處理引擎。 Jelly借鑑了JSP定指標籤,Velocity,
Cocoon和Xdoclet中的腳本引擎的許多優勢。Jelly能夠用在命令行,Ant或者Servlet之中。
Commons-FileUpload
FileUpload 使得在你能夠在應用和Servlet中容易的加入強大和高性能的文件上傳能力.
Commons-BeanUtils
Commons-BeanUtils 提供對 Java 反射和自省API的包裝
Commons-Chain
Chain 提供實現組織複雜的處理流程的「責任鏈模式」.
Commons-Codec
Codec 包含一些通用的編碼解碼算法。包括一些語音編碼器, Hex, Base64, 以及URL encoder.
Commons-Collections
Commons-Collections 提供一個類包來擴展和增長標準的 Java Collection框架
Commons-Discovery
Commons-Discovery 提供工具來定位資源 (包括類) ,經過使用各類模式來映射服務/引用名稱和資源名稱。
Commons-EL
Commons-EL 提供在JSP2.0規範中定義的EL表達式的解釋器.
Commons-Jexl
Jexl是一個表達式語言,經過借鑑來自於Velocity的經驗擴展了JSTL定義的表達式語言。.
Jakarta Commons HttpClient
HttpClient做爲HTTP客戶端組件與服務器進行通信,同時使用了jdom進行XML數據的解析。
Jakarta Commons Net
一個用於操做Internet基礎協議(Finger,Whois,TFTP,Telnet,POP3,FTP,NNTP,以及SMTP)的底層API。Net包不只支持對各類低層次協
議的訪問,並且還提供了一個高層的抽象。它使得開發者再也不須要直接面對各類協議的Socket級的低層命令。
Commons-Configuration
Commons-Configuration 工具能夠從
*Properties文件
*XML文件
*JNDI
*JDBC 數據源
*System properties
*Applet parameters
*Servlet parameters等來讀取相應的信息
Commons-validator
commons-validator提供了一個簡單的,可擴展的框架來在一個XML文件中定義校驗器 (校驗方法)和校驗規則。支持校驗規則的和錯誤消息的國
際化。
Commons-Digester
Digester基於規則的XML文檔解析,主要用於XML到Java對象的映射.
Commons Betwixt
Commons Betwixt這個組件提供一個XML自省(introspection)機制用來把Java Bean映射到XML文檔.他實現了與標準的Introspector及BeanInfo
類類似的XMLIntrospector及XMLBeanIfno類.
Commons-Convert
Commons-Convert的目標是提供一個簡單的包來完成把一種類型的對象轉換成另外一種.但它目前只支持String到Object或Object到String的轉換.
Commons4E
這個Eclipse插件方便了利用Jakarta Commons組件所進行地開發.Commons4E根據用戶選擇的字段(fields)利用commons-lang builders來自動生
成如下方法:toString(),hashcode(),equals(Object)和compareTo(Object).
Commons-Email
Commons-Email的目的是提供一組用於發送Email的API,它基於Java Mail API基礎之上並進行了簡化。它提供的主要Java類有:SimpleEmail:
這個類用於發送簡單的文本類型email。MultiPartEmail:這個類容許發送文本消息並附帶附件。HtmlEmail:用於發送Html格式的附件並支持
內含圖片。EmailAttachment:這是一個簡單的容器類用於簡化附件的處理。
Commons-IO
Commons IO是Jakarta Commons項目的一個子項目。用來幫助進行IO功能開發.它包含三個主要的領域:Utility classes-提供一些靜態方法來
完成公共任務.Filters-提供文件過濾器的各類實現.Streams-提供實用的Stream,reader與writer實現.
-----------------------------------------------------------------------------
ANother Tool for Language Recognition(ANTLR):它的描述語言能夠生成詞法分析器、語法分析器與語義分析器,也就是說,咱們能夠用它
來識別加工不一樣的語言(編譯器的編譯器)。它同時支持3大類語言的輸出:C++, Java, C#(按照生日排序),也就是說,咱們能夠利用它來
用C#生成編譯器,它是這樣的一種工具,它能夠接受詞文法語言描述,並能產生識別這些語言的語句的程序。做爲翻譯程序的一部分,你可使用
簡單的操做符和動做來參數化你的文法,使之告訴ANTLR怎樣去建立抽象語法樹(AST)和怎樣產生輸出。ANTLR知道怎樣去生成識別程序,語言包
括Java,C++,C#. 。相似的還有coco/r 。
cglib是一個強大的,高性能,高質量的Code生成類庫。它能夠在運行期擴展Java類與實現Java 接口。Hibernate用它來實現PO字節碼的動態生成
。 主頁 http://cglib.sourceforge.net
c3p0-0.8.4.5.jar
c3p0是一個容易使用的java庫,用於擴充傳統的基於驅動管理的JDBC驅動和JNDI綁定數據源,包括執行Connection和Statement Pooling的數據
源。
cleanimports是對java文件中的無用的imports做清理,並經過配置文件提供的格式對imports代碼段進行格式整理。
concurrent-1.3.2.jar
concurrent包提供標準化、高效的版本的實用的類,用於並行的Java程序。
http://gee.cs.oswego.edu/dl/classes/EDU/oswego/cs/dl/util/concurrent/intro.html
connector.jar
JCA(J2EE Connector Architecture)規範的包
dom4j-1.5.2.jar
Dom4J是一個在Java平臺上使用Java Collections Framework與XML、 XPath和XSLT協同工做的開源Java庫,它全面支持DOM、SAX和JAXP。
ehcache-1.1.jar
EHCache 是一個純java的在進程中的緩存,它具備如下特性:快速,簡單,爲Hibernate2.1充當可插入的緩存,最小的依賴性,全面的文檔和
測試。
官方網站 http://ehcache.sourceforge.net/
jaxen-1.1-beta-4.jar
jaxen是一個用Java開發的XPath 引擎,用於配合各類基於XML的對象模型,如DOM, dom4j ,JDOM以及Java Beans。
jboss-cache.jar
JBossCache是一個複製的事務處理緩存,它容許你緩存企業級應用數據來更好的改善性能。緩存數據被自動複製,讓你輕鬆進行JBoss服務器之
間的集羣工做。JBossCache可以經過JBoss應用服務或其餘J2EE容器來運行一個MBean服務,固然,它也能獨立運行。
JBossCache包括兩個模塊:TreeCache和TreeCacheAOP。
TreeCache --是一個樹形結構複製的事務處理緩存。
TreeCacheAOP --是一個「面向對象」緩存,它使用AOP來動態管理POJO(Plain Old Java Objects)
注:AOP是OOP的延續,是Aspect Oriented Programming的縮寫,意思是面向方面編程。
官方網站 http://www.jboss.org/products/jbosscache
jboss-jmx.jar
JMX(Java Management Extensions)是一個爲應用程序植入管理功能的框架。JMX是一套標準的代理和服務,實際上,用戶能夠在任何Java應用
程序中使用這些代理和服務實現管理。
oscache-2.0.2.jar
OSCache是個一個普遍採用的高性能的J2EE緩存框架,OSCache能用於任何Java應用程序的普通的緩存解決方案。
OSCache有如下特色:
緩存任何對象,你能夠不受限制的緩存部分jsp頁面或HTTP請求,任何java對象均可以緩存。
擁有全面的API--OSCache API給你全面的程序來控制全部的OSCache特性。
永久緩存--緩存能隨意的寫入硬盤,所以容許昂貴的建立(expensive-to-create)數據來保持緩存,甚至能讓應用重啓。
支持集羣--集羣緩存數據能被單個的進行參數配置,不須要修改代碼。
緩存記錄的過時--你能夠有最大限度的控制緩存對象的過時,包括可插入式的刷新策略(若是默認性能不須要時)。
官方網站 http://www.opensymphony.com/oscache/
proxool-0.8.3.jar
Proxool是Java數據庫鏈接池,它能向存在的JDBC驅動中透明的增長數據庫鏈接池。
swarmcache-1.0rc2.jar
SwarmCache是一個簡單且有效的分佈式緩存,它使用IP multicast與同一個局域網的其餘主機進行通信,是特別爲集羣和數據驅動web應用程序
而設計的。SwarmCache可以讓典型的讀操做大大超過寫操做的這類應用提供更好的性能支持。
SwarmCache使用JavaGroups來管理從屬關係和分佈式緩存的通信。
官方網站 http://swarmcache.sourceforge.net
xalan-2.6.jar
Xalan名稱來自於一種罕見的樂器。
Xalan-Java是一個將XML轉換成HTML、text或其餘XML文件類型的XSLT(XSL Transformations)處理機制。它使用XSL Transformations (XSLT)
Version 1.0 and XML Path Language (XPath) Version 1.0。它在命令行方式、applet、servlet、或其餘程序的模塊中均可以使用。
Xalan同時構建於SAX2和DOM level 2上。
官方網站;http://xml.apache.org/xalan-j/
xerces-2.6.2.jar
Xerces(名稱來源於一種叫Xerces
Blue的蝴蝶)提供世界級的XML解析和產生。充分驗證的語法分析可用於Java和C++,執行W3C的XML和DOM(Level1 and
2)標準,以及SAX(version 2)標準。其語法具備高模塊化和可配置化。同時提供支持XML Schema(W3C標準草案)。
checkstyle檢查java程序源代碼編碼風格的,是java程序員不可或缺的工具,用以檢查本身的編碼習慣是否符合公司的要求或sun的約定。固然
若是你用了ide,那裏可能有相應的功能或插件來幫助程序員來完成這項工做。也如checkstyle其名所示,它只檢查,不進行beautifier操做。
因此,它應比較適合用於項目管理,用於dailybuild.若是你想借助工具來beautifier你的java源代碼,能夠參考我寫的jalopy安裝使用.
Clickstream:它是一個JavaServlet過濾器,用來跟蹤用戶請求(好比:點擊)和請求 隊列(好比:點擊流)以向網絡管理員顯示誰在她的網
站上以及每一個用戶正在訪問那個頁面。 http://www.opensymphony.com/clickstream/
Cargo是一個Java類包用來操做當前J2EE容器.它提供了Ant和Maven API來中止/啓動/配置Java容器也提供了Java API來解釋/建立J2EE組件.
DbUnit是爲數據庫驅動的項目提供的一個對JUnit 的擴展,除了提供一些經常使用功能,它能夠將你的數據庫置於一個測試輪迴之間的狀態。
iText是一個可以快速產生PDF文件的java類庫。iText的java類對於那些要產生包含文本,表格,圖形的只讀文檔是頗有用的。它的類庫尤爲與
java Servlet有很好的給合。使用iText與PDF可以使你正確的控制Servlet的輸出。
DWR(Direct Web Remoting)是一個WEB遠程調用框架.利用這個框架可讓AJAX開發變得很簡單.利用DWR能夠在客戶端利用JavaScript直接調用
服務端的Java方法並返回值給JavaScript就好像直接本地客戶端調用同樣(DWR根據Java類來動態生成JavaScrip代碼).它的最新版本DWR0.6添加
許多特性如:支持Dom Trees的自動配置,支持Spring(JavaScript遠程調用spring bean),更好瀏覽器支持,還支持一個可選的commons-logging日
記操做.
Java2Html 可以的把java源代碼轉換爲高亮有序的HTML, RTF, TeX 與 XHTML格式。這個開源項目有一個java applet 與許多插件以便可以與
其它系統很好的給合。
jMock利用mock objects思想來對Java code進行測試。jMock具備如下特色:容易擴展,讓你快速簡單地定義mock objects,所以沒必要打破程序間
的關聯,讓你定義靈活的超越對象之間交互做用而帶來測試侷限,減小你測試地脆弱性。
PMD是一個Java源碼分析器。它能夠發現不須要使用的變量,空的Catch塊和不須要建立的對象等。它還包含一個CPD工具能夠探測一塊代碼中相
同的部分。
OS(OpenSymphony)的SiteMesh是一個用來在JSP中實現頁面佈局和裝飾(layout and decoration)的框架組件,可以幫助網站開發人員較容易
實現頁面中動態內容和靜態裝飾外觀的分離。
Velocity是一個基於java的模板引擎(template engine)。它容許任何人僅僅簡單的使用模板語言(template language)來引用由java代碼
定義的對象。 當Velocity應用於web開發時,界面設計人員能夠和java程序開發人員同步開發一個遵循MVC架構的web站點,也就是說,頁面設
計人員能夠只關注頁面的顯示效果,而由java程序開發人員關注業務邏輯編碼。Velocity將java代碼從web頁面中分離出來,這樣爲web站點的
長期維護提供了便利,同時也爲咱們在JSP和PHP以外又提供了一種可選的方案。 Velocity的能力遠不止web站點開發這個領域,例如,它能夠
從模板(template)產生SQL和PostScript、XML,它也能夠被看成一個獨立工具來產生源代碼和報告,或者做爲其餘系統的集成組件使用。Vel
ocity也能夠爲Turbine web開發架構提供模板服務(template service)。Velocity+Turbine提供一個模板服務的方式容許一個web應用以一個
真正的MVC模型進行開發。 【VeloEclipse :Velocity在Eclipse平臺下的一個輔助開發插件】
Jakarta ORO一套文本處理工具,能提供perl5.0兼容的正則表達式,AWK-like正則表達式, glob表達式。還提供替換,分割,文件名過慮等功能.
caucho:
Burlap是一個輕量級的XML RPC協議.利用Burlap Web服務協議使用Web服務不須要大型的框架也不用學習其它協議字母湯(alphabet soup).
Caucho Resin提供了最快的jsp/servlets運行平臺。它支持Servlet,XSL Filtering6而且具有XSLT和XPath1.0引擎。
Hessian也是一個輕量級的,自定義描述的二進制RPC協議.由於它是一個二進制協議,因此它很適合於發送二進制數據而須要使用其它附件來擴展
這個協議.
-----------------
cos上傳組件它是著名O'Reilly的圖書出版公司開發的。這個上傳的組件作得很棒。
EasyMock爲Mock Objects提供接口並在JUnit測試中利用Java的proxy設計模式生成它們的實例。EasyMock最適合於測試驅動開發。
FreeMarker容許Java servlet保持圖形設計同應用程序邏輯的分離,這是經過在模板中密封HTML完成的。模板用servlet提供的數據動態地生成
HTML。模板語言是強大的直觀的,編譯器速度快,輸出接近靜態HTML頁面的速度。
Jamon是一個Java文本模板引擎,用於生成動態HTML, XML,或任何基於文本的內容。它有一個豐富的功能集,支持封裝,參數化,功能分解,表
達邏輯重用。模板聲明它們要求生成的參數,包括動態模板內容("fragments"),並被翻譯成帶有公有方法的Java類,它的符號反映了在模板中
聲明的參數。
JasperReports是一個基於Java的開源報表工具,它能夠在Java環境下像其它IDE報表工具同樣來製做報表。JasperReports支持PDF、HTML、XLS
、CSV和XML文件輸出格式。JasperReports是當前Java開發者最經常使用的報表工具。
Java Excel API(JXL)是一個成熟,開源的Excel電子表格讀取,修改,寫入的項目。Java開發者利用它簡單,便利的API就可以讀取Excel電子
表格,進行修改並可以把修改後的變化寫到任何output stream中(如:Disk, HTTP, database, 或任何socket),這個項目基於GPL發佈,並且對中
文有很好的支持。
● 支持字體、數字、日期操做
● 可以修飾單元格屬性
● 支持圖像和圖表
JOTM 是一個基於Java開放源代碼的事務處理管理器。它遵循JTA APIs規範與Business Transaction Protocol(BTP)規範以提供了對Web
Service的支持。
ObJectRelationalBridge-OJB是基於XML的對象/關係映射工具.OJB提供一些高級的特性如:對象緩存,延遲加載,利用事務隔離級別的結構進行分
布式管理,支持悲觀與樂觀鎖.OJB還提供了一個靈活的配置與插件機制以即可以擴展加入本身的功能.
Jakarta POI可讓你使用Java來讀寫MS Excel ,Word文件
Quartz是OpenSymphony開源組織在Job scheduling領域又一個開源項目,它能夠與J2EE與J2SE應用程序相結合也能夠單獨使用。Quartz能夠用來
建立簡單或爲運行十個,百個,甚至是好幾萬個Jobs這樣複雜的日程序表。Jobs能夠作成標準的Java組件或 EJBs。
xfire框架所需jar包:
activation-1.0.2.jar
commons-attributes-api-2.1.jar
commons-beanutils-1.7.0.jar
commons-codec-1.3.jar
commons-httpclient-3.0.jar
commons-logging-1.0.4.jar
httpunit-1.6.1.jar
jaxen-1.1-beta-8.jar
jdom-1.0.jar
js-1.5R4.1.jar
jtidy-4aug2000r7-dev.jar
log4j-1.2.6.jar
mail-1.3.3_01.jar
nekohtml-0.9.1.jar
org.mortbay.jetty-5.1.3.jar
qdox-1.5.jar
servlet-api-2.3.jar
spring-1.2.6.jar
stax-api-1.0.jar
stax-utils-snapshot-20040917.jar
wsdl4j-1.5.2.jar
wstx-asl-2.9.jar
xbean-2.1.0.jar
xbean-spring-2.2.jar
xercesImpl-2.6.2.jar
xfire-aegis-1.0.jar
xfire-annotations-1.0.jar
xfire-core-1.0.jar
xfire-spring-1.0.jar
xfire-xmlbeans-1.0.jar
xmlParserAPIs-2.6.2.jar
XmlSchema-1.0.jar
activation.jar:與javaMail有關的jar包,使用javaMail時應與mail.jar一塊兒加入到lib中去,具體負責mail的數據源和類型等
ajaxtags-1.2-beta3.jar:ajax提供的標籤庫,使用戶能像使用jsp普通標籤同樣使用ajax
ant.jar和antlr.jar(能夠刪去):的是ant編譯用的包,在工程中不用添加
asm.jar:Hebernate的包,Hibernate在運行時使用這個代碼生成庫加強類(與java反射機制聯合使用).ASM字節碼庫,cglib.jar包依賴的包。必需的jar包。
axis-ant.jar:是Axis爲支持Ant構建,提供了的文件。該文件包含三個可選任務(task)的定義和實現:axis-wsdl2java,axis-java2wsdl和axis-admin。
cglib-2.1.3.jar:全稱是Code Generation Library,它能夠用來動態繼承Java類或者實現接口,不少知名的開源項目中用到了它.Hibernate用它來實現PO字節碼的動態生成,很是核心的庫,必需的jar包。
chartengineapi.jar:不大清楚,大概是Birt關於字體的類庫。
com.ibm.icu_3.6.1.v10070417.jar:從3.2版本開始,eclipse就增長了一個com.ibm.icu插件,用於加強對多語言的支持。應該是沒用的。
commons-beanutils.jar:下面幾個帶「commons」的都是Apache Commons包中的一個,這裏是被hibernate使用的,估計在工程中沒有所有用到這些包,因此有的應該能刪去。本包包含了一些Bean工具類類,是必須使用的jar包。
commons-cli-1.0.jar:這是一個處理命令的工具。好比main方法輸入的string[]須要解析。你能夠預先定義好參數的規則,而後就能夠調用CLI來解析。
commond-collections.jar:包含了一些Apache開發的集合類,功能比java.util.*強大。必須使用的jar包.
commons-digester.jar:它能方便地將XML文檔所定義的元素轉化爲JAVA對象,其實它的用法有點象棧(固然內在的原理就是那個古老的東西,只是提供了更高一層的封裝)。
commons-discovery-0.2.jar:discovery模式的實現,提供定位與實例化類或其餘資源的通用方法。使用最好的算法獲得接口的全部實現。當用戶想找到全部的提供某一服務的提供商時,這將特別有用
commons-fileupload.jar:jsp的上傳文件功能
commons-io.jar:能夠當作是java.io的擴展
commons-lang.jar:包含了一些數據類型工具類,是java.lang.*的擴展。必須使用的jar包。
commons-pool-1.2.jar:DBCP數據庫鏈接池,Apache的Jakarta組織開發的,Tomcat4的鏈接池也是DBCP。
commons-validator.jar:用來幫助進行驗證的工具。好比驗證Email字符串,日期字符串等是否合法。
coreapi.jar:一種應用的核心 類庫,這裏是Birt的核心包。
dataadapterapi.jar:Birt的有關數據處理的包,具體做用還沒摸清楚。
dom4j-1.4.jar:是一個Java的XML API,相似於jdom,用來讀寫XML文件的。Hibernate使用dom4j解析XML配置文件和XML映射元文件。必需的。
dteapi.jar:Birt的有關數據處理的包,具體做用還沒摸清楚。
dwr.jar:dwr的核心包
ehcache-1.2.jar:Hibernate可使用不一樣cache緩存工具做爲二級緩存。EHCache是缺省的cache緩存工具。若是沒有其它的可選緩存工具,則爲必需的。
engineapi.jar:Birt的有關數據集的包
FCKeditor.jar:支持FCKEditor的圖片文件上傳和瀏覽的包
flute.jar:有關解析css的類庫,誰的還沒弄清楚
freemarker.jar:是webwork的包,FreeMarker容許Java servlet保持圖形設計同應用程序邏輯的分離,這是經過在模板中密封HTML完成的。模板用servlet提供的數據動態地生成HTML。
hibernate3.jar:hibernate3的核心類庫。
itext.jar:java:是用於生成PDF文檔的一個java類庫。經過iText不只能夠生成PDF或rtf的文檔,並且能夠將XML、Html文件轉化爲PDF文件。
iTextAsian.jar:itext中關於亞洲編碼的類庫,在這裏用於中文字體的輸入。
jasperreports.jar:有關報表功能的類庫
javamail.jar:javamail的核心類,提供了mail發送的基本接口。
jaxrpc.jar:(java APIs for XML-Based Remote Procedure Call,JAX-RPC)將XML 類型轉換爲 Java 類型,以確保 Web 服務客戶機和基於Java 的應用程序之間可以進行平穩的數據交換。是spring須要的。
jenkov-prizetags-bin-3.2.0.jar:一個集許多功能於一身的Jsp標籤庫。其中最受歡迎的Tree Tag,這個Tag能夠爲不一樣節點指定
js.jar:java關於處理javascript的類庫。
jstl.jar:(jsp standard taglib)jstl的核心標籤庫。
jta.jar:java的事務規範,當用到事務處理時是必需的,hebernate中用到。
jxl.jar:(java excel api)是一個韓國人寫的處理Excel的類庫,可以方便的導入和處處Excel。
log4j.jar:日誌包,能夠更加詳細的記錄日誌。可選的。
modelapi.jar:birt關於報表生成的類庫,具體功能有待考究。
mysql-connector-java-5.0.5-bin.jar:mysql的數據庫聯接驅動,符合JCA 規範,若是你在App Server上把Hibernate配置爲mysql數據庫聯接池的話,就須要這個jar。
ognl.jar:OGNL(Object Graph Navigation Language)是一種表達式語言,使用它可使表達式與java對象中的getter和setter屬性綁定,且一個OGNL表達式能夠進行存和取兩方面的操做.ognl.jar是java對ognl的支持,webwork加載的。
org.eclipse.birt.report.viewer.nl1_2.2.0.v20070526-1010.jar:有關Birt的報表生成的類庫
org.eclipse.emf.common_2.2.1.v200702131851.jar: EMF根據ecore建模(能夠和schema的xsd相互轉換)生成強類型的EMF代碼. 這個強類型更強的地方是能夠取得meta信息,從而能夠用於校驗和界面輔助信息的生成.相似於動態bean,屬性也能夠根據名稱動態取得,這幾個類庫都與 Birt的報表生成有關
org.eclipse.emf.ecore.xmi_2.2.2.v200702131851.jar
org.eclipse.emf.ecore_2.2.2.v200702131851.jar
oscore.jar:webwork的一個通用功能類庫
poi.jar:Apache的操做數據轉換的類庫,能導入和處處Excel,與jxl.jar功能重複。
proxool-0.9.0RC3.jar:是一個鏈接池,若是你準備用這個鏈接池,就須要這個jar包。
quartz-1.6.0.jar:一個定時器
rife-continuations.jar:rife原來是一個基於組件模型的Java Web框架,被webwork集成。
saaj.jar:SOAP with Attachments API for Java。能爲java提供按照SOAP規範的收發信息。誰帶進來的有待考究。
sac.jar:Simple API for CSS,java處理CSS的類。
scriptapi.jar:可以在Java中使用腳本語言引擎,在腳本語言和Java之間交換數據。多是Birt引入的。
sitemesh.jar:Sitemesh 是一個基於WEB頁面的佈局、裝飾以及應用整合的開源框架。它能幫助咱們在由大量頁面構成的項目中建立一致的頁面佈局和外觀,如一致的導航條,一致的 banner,一致的版權,等等。它不只僅能處理動態的內容,如jsp,php,asp等產生的內容,它也能處理靜態的內容,使得它的內容也符合你的頁面結構的要求.sitemesh.jar是其類庫
spring.jar:spring的核心類庫。
standard.jar:jstl的類庫,包含TLD 和標記句柄。
velocity-dep.jar: webwork的包。依賴的Velocity類庫
velocity-tools-view.jar:同上
velocity.jar:webwork帶來的包。是一個的模板引擎(template engine)。它容許任何人僅僅簡單的使用模板語言(template language)來引用由java代碼定義的對象。
webwork-2.2.5.jar:webwork的核心類庫。
wsdl4j-1.5.1.jar:一個可擴展的 WSDL 分析框架,WSIF 在此基礎上進行構建。AXIS必需的包。
xwork.jar:包含webwork構建所依賴的xwork類庫,webwork是基於xwork的
(1)hibernate3.jar:
Hibernate的核心庫,沒有什麼可說的,必須使用的jar包
(2)cglib-asm.jar:
CGLIB庫,Hibernate用它來實現PO字節碼的動態生成,很是核心的庫,必須使用的jar包
(3)dom4j.jar:
dom4j是一個Java的XML API,相似於jdom,用來讀寫XML文件的。dom4j是一個很是很是優秀的Java XML API,具備性能優異、功能強大和極端易用使用的特色,同時它也是一個開放源代碼的軟件,能夠在SourceForge上找到它。在IBM developerWorks上面能夠找到一篇文章,對主流的Java XML API進行的性能、功能和易用性的評測,dom4j不管在那個方面都是很是出色的。我早在將近兩年以前就開始使用dom4j,直到如今。現在你能夠看到越 來越多的Java軟件都在使用dom4j來讀寫XML,特別值得一提的是連Sun的JAXM也在用dom4j。這是必須使用的jar 包,Hibernate用它來讀寫配置文件。
(4)odmg.jar:
ODMG是一個ORM的規範,Hibernate實現了ODMG規範,這是一個核心的庫,必須使用的jar包。
(5)commons-collections.jar:
Apache Commons包中的一個,包含了一些Apache開發的集合類,功能比java.util.*強大。必須使用的jar包。
(6)commons-beanutils.jar:
Apache Commons包中的一個,包含了一些Bean工具類類。必須使用的jar包。
(7)commons-lang.jar:
Apache Commons包中的一個,包含了一些數據類型工具類,是java.lang.*的擴展。必須使用的jar包。
(8)commons-logging.jar:
Apache Commons包中的一個,包含了日誌功能,必須使用的jar包。這個包自己包含了一個Simple Logger,可是功能很弱。在運行的時候它會先在CLASSPATH找log4j,若是有,就使用log4j,若是沒有,就找JDK1.4帶的 java.util.logging,若是也找不到就用Simple Logger。commons-logging.jar的出現是一個歷史的的遺留的遺憾,當初Apache極力遊說Sun把log4j加入JDK1.4, 然而JDK1.4項目小組已經接近發佈JDK1.4產品的時間了,所以拒絕了Apache的要求,使用本身的java.util.logging,這個包 的功能比log4j差的很遠,性能也通常。
後來Apache就開發出來了commons-logging.jar用來兼容兩個logger。所以用commons-logging.jar寫的 log程序,底層的Logger是能夠切換的,你能夠選擇log4j,java.util.logging或者它自帶的Simple Logger。不過我仍然強烈建議使用log4j,由於log4j性能很高,log輸出信息時間幾乎等於System.out,而處理一條log平均只需 要5us。你能夠在Hibernate的src目錄下找到Hibernate已經爲你準備好了的log4j的配置文件,你只須要到Apache 網站去下載log4j就能夠了。commons-logging.jar也是必須的jar包。
使用Hibernate必須的jar包就是以上的這幾個,剩下的都是可選的。
ant.jar:
Ant編譯工具的jar包,用來編譯Hibernate源代碼的。若是你不許備修改和編譯Hibernate源代碼,那麼就沒有什麼用,可選的jar包
optional.jar:
Ant的一個輔助包。
c3p0.jar:
C3PO是一個數據庫鏈接池,Hibernate能夠配置爲使用C3PO鏈接池。若是你準備用這個鏈接池,就須要這個jar包。
proxool.jar:
也是一個鏈接池,同上。
commons-pool.jar, commons-dbcp.jar:
DBCP數據庫鏈接池,Apache的Jakarta組織開發的,Tomcat4的鏈接池也是DBCP。
實際上Hibernate本身也實現了一個很是很是簡單的數據庫鏈接池,加上上面3個,你實際上能夠在Hibernate上選擇4種不一樣的數據庫鏈接 池,選擇哪個看我的的偏好,不過DBCP可能更通用一些。另外強調一點,若是在EJB中使用Hibernate,必定要用App Server的鏈接池,不要用以上4種鏈接池,不然容器管理事務不起做用。
connector.jar:
JCA 規範,若是你在App Server上把Hibernate配置爲Connector的話,就須要這個jar。不過實際上通常App Server確定會帶上這個包,因此其實是多餘的包。
jaas.jar:
JAAS是用來進行權限驗證的,已經包含在JDK1.4裏面了。因此其實是多餘的包。
jcs.jar:
若是你準備在Hibernate中使用JCS的話,那麼必須包括它,不然就不用。
jdbc2_0-stdext.jar:
JDBC2.0的擴展包,通常來講數據庫鏈接池會用上它。不過App Server都會帶上,因此也是多餘的。
jta.jar:
JTA規範,當Hibernate使用JTA的時候須要,不過App Server都會帶上,因此也是多餘的。
junit.jar:
Junit包,當你運行Hibernate自帶的測試代碼的時候須要,不然就不用。
xalan.jar, xerces.jar, xml-apis.jar:
Xerces是XML解析器,Xalan是格式化器,xml-apis其實是JAXP。通常App Server都會帶上,JDK1.4也包含了解析器,不過不是Xerces,是Crimson,效率比較差,不過Hibernate用XML只不過是讀取 配置文件,性能沒什麼緊要的,因此也是多餘的。
ant-1.63.jar Ant 的核心包,在構建Hibernate 時會用到
antlr-2.7.5H3.jar 語言轉換工,Hibernate利用它實現 HQL 到 SQL的轉換
asm.jar/asm-attrs.jar ASM 字節轉換庫
c3p0-0.8.5.2.jar C3PO JDBC 鏈接池工具
cglib-2.1.jar 高效的代碼生成工具, Hibernate用它在運行時擴展 Java類和實現 Java 接口
commons-collections-2.1.1.jar Apache 的工具集,用來加強Java對集合的處理能力
commons-logging-1.0.4.jar Apache 軟件基我組所提供的日誌工具
concurrent-1.3.2.jar 線程同步工具,在使用JBoss 的樹狀緩存時須要用到
connector.jar 用鏈接多個應用服務器的標準鏈接器
dom4j-1.6.jar dom4j XML 解析器
ehcache-1.1.jar 緩存工具.在沒有提供其餘緩存工具時,這個緩存工具是必不可少的
jaas.jar 標準的 Java 權限和認證服務包
jaxen-1.1-beta-4.jar 通用的 XPath 處理引擎
jboss-cache.jar JBoss 的一種樹狀緩存實現工具
jboss-common.jar Jboss 的基礎包,在使用 JBoss 的樹狀緩存時必須有此包
jboss-jmx.jar JBoss 的 JMX 實現包
jboss-system.jar JBoss 的核心,包括服務器和部署引擎
jdbc2_0-stdext.jar 標準的 JDBC 2.0 擴展API
jgroups2.2.7.jar 網絡通訊工具包
jta.jar 標準的 JAVA 事務處理接口
junit-3.8.1.jar JUnit 測試框架
log4.j-1.2.9.jar log4j 庫,Apache 的日誌工具
oscache-2.1.jar Java 對象的緩存工具
proxool-0.8.3.jar Proxool JDBC 鏈接池 工具
swarmcache-1.0rc2.jar Hibernate 可使用的一種緩存工具
versioncheck.jar 版本檢查工具包,用於在構建 Hibernate 的時候檢查輔助 jar 包文件的版本
xerces-2.6.2.jar SAX XML 解析器
xml-apis.jar Java語言中標準的XML 解析器javascript