1. 程式人生 > >java 使用的各種jar包介紹

java 使用的各種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用它來讀寫配置檔案。

antlr-2.7.6.jar簡介

專案中沒有新增antlr-2.7.6.jar,hibernate不會執行hql語句並且會報NoClassDefFoundError: antlr/ANTLRException錯誤

ejb3-persistence.jar簡介

規範內容包括Bean提供者,應用程式裝配者,EJB容器,EJB配置工具,EJB服務提供者,系統管理員。這裡面,EJB容器是EJB之所以能夠執行的核心。EJB容器管理著EJB的建立,撤消,啟用,去活,與資料庫的連線等等重要的核心工作。

hibernate3.jar簡介

Hibernate的庫,必須使用的jar 

hibernate-annotations.jar簡介

Hibernate annotation可以減輕我們每一次都需要配置XXX.hbm.xml,可以減輕dba的工作量,使程式從一個數據庫移植到另一個數據庫更輕鬆,這些工作都交於hibernate內部自動維護

Hibernate3.3.2的JAR簡介

包名

位置

用途

hibernate3.jar

/hibernate

核心JAR包

antlr.jar

/hibernate/lib/required

Another Tool for Language Recognition,可以構造語言識別器,解析HQL需要

commons-collections.jar

/hibernate/lib/required

包含了一些Apache開發的集合類,功能比java.util.*強大

dom4j.jar

/hibernate/lib/required

越來越多的Java軟體都在使用dom4j來操作XML,Hibernate也不例外

javassist.jar

/hibernate/lib/required

操作位元組碼,跟cglib相關

jta.jar

/hibernate/lib/required

定義JTA規範的JAR包,當Hibernate使用JTA的時候需要

slf4j.jar

/hibernate/lib/required

整合各種日誌框架的工具

slf4j-nop.jar

/slf4j

包含了對slf4j.jar的實現類

注意:slf4.jarslf4j-nop.jar之間的版本需要匹配,如果Hibernate中使用早期的slf4j.jar,可以從slf4j官方網站下載新的JAR包將其置換掉

如果要使用Annotation,還需要下面的JAR包:

包名

位置

用途

hibernate-annotations.jar

/hibernate-annotations

使用Hibernate Annotation的核心JAR包

ejb3-persistence.jar

/hibernate-annotations/lib

實體類中使用的註解都是在這個JAR包中定義的

hibernate-commons-annotations.jar

/hibernate-annotations/lib

使用javax.persistence下的Annotation可以不依賴HibernateJAR包,這樣的話可以切換到其他的ORM框架

如果要使用log4j,則需要新增相關的JAR包:

包名

位置

用途

log4j.jar

很多框架中都有

生成使用者定製日誌

slf4j-log4j.jar

/slf4j

將slf4j和log4j關聯起來的JAR包

當然別忘記了在類路徑下放log4j的配置檔案哦

Spring的相關jar包簡介

(1) spring-core.jar

這個jar檔案包含Spring框架基本的核心工具類,Spring其它元件要都要使用到這個包裡的類,是其它元件的基本核心,當然你也可以在自己的應用系統中使用這些工具類。

(2) spring-beans.jar

這個jar檔案是所有應用都要用到的,它包含訪問配置檔案、建立和管理bean以及進行Inversion of Control / Dependency InjectionIoC/DI)操作相關的所有類。如果應用只需基本的IoC/DI支援,引入spring-core.jarspring-beans.jar檔案就可以了。

(3) spring-aop.jar

這個jar檔案包含在應用中使用SpringAOP特性時所需的類。使用基於AOPSpring特性,如宣告型事務管理(Declarative Transaction Management),也要在應用裡包含這個jar包。

(4) spring-context.jar

  這個jar檔案為Spring核心提供了大量擴充套件。可以找到使用Spring ApplicationContext特性時所需的全部類,JDNI所需的全部類,UI方面的用來與模板(Templating)引擎如VelocityFreeMarkerJasperReports整合的類,以及校驗Validation方面的相關類。

(5) spring-dao.jar

  這個jar檔案包含Spring DAOSpring Transaction進行資料訪問的所有類。為了使用宣告型事務支援,還需在自己的應用裡包含spring-aop.jar

(6) spring-hibernate.jar

  這個jar檔案包含SpringHibernate 2Hibernate 3進行封裝的所有類。

(7) spring-jdbc.jar

  這個jar檔案包含對SpringJDBC資料訪問進行封裝的所有類。

(8) spring-orm.jar

  這個jar檔案包含SpringDAO特性集進行了擴充套件,使其支援 iBATISJDOOJBTopLink,因為Hibernate已經獨立成包了,現在不包含在這個包裡了。這個jar檔案裡大部分的類都要依賴spring-dao.jar裡的類,用這個包時你需要同時包含spring-dao.jar包。

(9) spring-remoting.jar

  這個jar檔案包含支援EJBJMS、遠端呼叫RemotingRMIHessianBurlapHttp InvokerJAX-RPC)方面的類。

(10) spring-support.jar

  這個jar檔案包含支援快取Cacheehcache)、JCAJMX、郵件服務(Java MailCOS Mail)、任務計劃SchedulingTimerQuartz)方面的類。

(11) spring-web.jar

  這個jar檔案包含Web應用開發時,用到Spring框架時所需的核心類,包括自動載入WebApplicationContext特性的類、StrutsJSF整合類、檔案上傳的支援類、Filter類和大量工具輔助類。

(12) spring-webmvc.jar

這個jar檔案包含Spring MVC框架相關的所有類。包含國際化、標籤、Theme、檢視展現的FreeMarkerJasperReportsTilesVelocityXSLT相關類。當然,如果你的應用使用了獨立的MVC框架,則無需這個JAR檔案裡的任何類。

(13) spring-mock.jar

  這個jar檔案包含Spring一整套mock類來輔助應用的測試。Spring測試套件使用了其中大量mock類,這樣測試就更加簡單。模擬HttpServletRequestHttpServletResponse類在Web應用單元測試是很方便的。

Spring包依賴說明:

1) spring-core.jarcommons-collections.jarspring-core.jar是以下其它各個的基本。

2) spring-beans.jarspring-core.jarcglib-nodep-2.1_3.jar

3) spring-aop.jarspring-core.jarspring-beans.jarcglib-nodep-2.1_3.jaraopalliance.jar

4) spring-context.jarspring-core.jarspring-beans.jarspring-aop.jarcommons-collections.jaraopalliance.jar

5) spring-dao.jarspring-core.jarspring-beans.jarspring-aop.jarspring-context.jar

6) spring-jdbc.jarspring-core.jarspring-beans.jarspring-dao.jar

7) spring-web.jarspring-core.jarspring-beans.jarspring-context.jar

8) spring-webmvc.jarspring-core.jar/spring-beans.jar/spring-context.jar/spring-web.jar

9) spring-hibernate.jarspring-core.jarspring- beans.jarspring-aop.jarspring-dao.jarspring-jdbc.jarspring- orm.jarspring-web.jarspring-webmvc.jar

10) spring-orm.jarspring-core.jarspring-beans.jarspring-aop.jarspring-dao.jarspring-jdbc.jarspring-web.jarspring-webmvc.jar

11) spring-remoting.jarspring-core.jarspring-beans.jarspring- aop.jarspring-dao.jarspring-context.jarspring-web.jarspring- webmvc.jar

12) spring-support.jarspring-core.jarspring-beans.jarspring-aop.jarspring-dao.jarspring-context.jarspring-jdbc.jar

13) spring-mock.jarspring-core.jarspring-beans.jarspring-dao.jarspring-context.jarspring-jdbc.jar

Struts2的相關jar包簡介

struts2-core-2.1.6.jar

struts2的核心包

freemarker-2.3.13.jar             

 FreeMarker是一個模板引擎,一個基於模板生成文字輸出的通用工具

commons-logging-1.0.4.jar         

 Jakarta的通用日誌記錄包

ognl-2.6.11.jar        

            支援ognl表示式

xwork-2.1.2.jar              

      xwork的包 由於Struts2是由xwork的延伸 有些類依然關聯著 xwork的類 

commons-fileupload-1.2.1.jar , commons-io.jar

 struts的上傳下載 兩者缺一不可

struts2-spring-plugin-2.1.8.1.jar       

 spring外掛

struts2-convention-plugin-2.2.1.1   

零配置實現 省去使用struts.xml進行Action置配的麻煩

jaxen-1.1-beta-6.jar簡介

他是Xpath支援包

commons-digester.jar簡介 

Digester基於規則的XML文件解析,主要用於XMLJava物件的對映.

commons-beanutils.jar簡介 

提供對Java 反射和自省API的包裝.

aspectjweaver.jar 簡介

用於在Spring 2.0中整合AspectJ AspectJ LTW織入器

ognl.jar簡介 

OGNLObject-Graph Navigation Language的縮寫,它是一種功能強大的表示式語言(Expression Language,簡稱為EL),通過它簡單一致的表示式語法,可以存取物件的任意屬性,呼叫物件的方法,遍歷整個物件的結構圖,實現欄位型別轉化等功能。它使用相同的表示式去存取物件的屬性。

cglib-asm.jar簡介

CGLIB庫,Hibernate用它來實現PO位元組碼的動態生成,非常核心的庫,必須使用的jar

odmg.jar簡介

ODMG是一個ORM的規範,Hibernate實現了ODMG規範,這是一個核心的庫,必須使用的jar包。

commons-collections.jar簡介

Apache Commons包中的一個,包含了一些Apache開發的集合類,功能比java.util.*強大。必須使用的jar包。

commons-beanutils.jar簡介 

Apache Commons包中的一個,包含了一些Bean工具類類。必須使用的jar包。

Java類庫中自帶的各個主要包的作用

java.utilJAVAutility工具包,包含一些使用工具類,如定義系統特性、使用與日期日曆相關的函式等。

java.langJAVAlanguage核心語言包;StringMathIntegerSystemThread,提供常用的功能。特殊之處是不需要匯入,是作為預設匯入的包。

java.awtJAVAabstractwindow toolkit,抽象視窗工具包;包含了構成抽象視窗共具體的多個類,這些類用於構建和管理應用程式的圖形使用者(GUI)

java.applet是建立APPLET的必須包;包含applet執行時所需要的一些類。

java.netJAVA有關網路操作的包。

java.ioJAVA的輸入輸出流的包。

java.sqlJAVA的資料庫操作包。

javax.swing是新的介面包。

java.applet 支援小應用程式的結構

java.awt 提供圖形使用者介面的能力

java.awt.color 支援顏色空間和外形

java.awt.datatransfer 與系統的剪貼簿交換資料

java.awt.dnd 支援拖拉操作

java.awt.event 處理事件

java.awt.font 描述多種字型型別

java.awt.geom 允許你使用幾何形狀

java.awt.im 允許編輯元件中日文,中文,韓文的的輸入

java.awt.im.spi 支援二選一的輸入裝置 (java 2, v1.3中加入)

java.awt.image 處理影象

java.awt.image.renderable 支援獨立顯示影象

java.awt.print 支援一般的列印功能

java.beans 允許你建立軟體元件

java.beans.beancontext bean 提供可執行環境

java.io 輸入輸出資料

java.lang 提供核心功能

java.lang.ref 使能與垃圾回收互動

java.lang.reflect 執行時分析程式碼

java.math 處理大整數和十進位制數

java.net 支援網路功能

java.rmi 支援遠端方法呼叫

java.rmi.activation 啟用永久物件

java.rmi.dgc 管理分佈垃圾回收

java.rmi.registry 對映名稱到遠端物件引用

java.rmi.server 支援遠端方法呼叫

java.security 處理證書,金鑰,摘要,簽名和其他安全功能

java.security.acl 管理訪問控制列表

java.security.cert 分析和管理證書

java.security.interfaces DSA(數字簽名演算法)定義介面

java.security.spec 設定金鑰和演算法引數

java.sql SQL(結構化查詢語言)資料庫互動

java.text 格式化,查詢和處理文字

java.util 包含一般工具

java.util.jar 生成和開啟JAR檔案

java.util.zip 讀寫壓縮或解壓縮檔案