1. 程式人生 > >java常用jar包詳解

java常用jar包詳解

1、dt.jar

SUN對於dt.jar的定義:Also includes dt.jar, the DesignTime archive of BeanInfo files that tell interactive development environments (IDE's) how to display the Java components and how to let the developer customize them for the application。中文翻譯過來就是:dt.jar是BeanInfo檔案的DesignTime歸檔,BeanInfo檔案用來告訴整合開發環境(IDE)如何顯示Java元件還有如何讓開發人員根據應用程式自定義它們。這段文字中提到了幾個關鍵字:DesignTime,BeanInfo,IDE,Java components。其實dt.jar就是DesignTime Archive的縮寫。那麼何為DesignTime。

    何為DesignTime?翻譯過來就是設計時。其實瞭解JavaBean的人都知道design time和runtime(執行時)這兩個術語的含義。設計時(DesignTIme)是指在開發環境中通過新增控制元件,設定控制元件或窗體屬性等方法,建立應用程式的時間。與此相對應的執行時(RunTIme)是指可以象使用者那樣與應用程式互動作用的時間。那麼現在再理解一下上面的翻譯,其實dt.jar包含了swing控制元件中的BeanInfo,而IDE的GUI Designer需要這些資訊。那讓我們看一下dt.jar中到底有什麼?下面是一張dt.jar下面的內容截圖:

    從上面的截圖可以看出,dt.jar中全部是Swing元件的BeanInfo。那麼到底什麼是BeanInfo呢?

    何為BeanInfo?JavaBean和BeanInfo有很大的關係。Sun所制定的JavaBean規範,很大程度上是為IDE準備的——它讓IDE能夠以視覺化的方式設定JavaBean的屬性。如果在IDE中開發一個視覺化應用程式,我們需要通過屬性設定的方式對組成應用的各種元件進行定製,IDE通過屬性編輯器讓開發人員使用視覺化的方式設定元件的屬性。一般的IDE都支援JavaBean規範所定義的屬性編輯器,當元件開發商釋出一個元件時,它往往將元件對應的屬性編輯器捆綁發行,這樣開發者就可以在IDE環境下方便地利用屬性編輯器對元件進行定製工作。JavaBean規範通過java.beans.PropertyEditor定義了設定JavaBean屬性的方法,通過BeanInfo描述了JavaBean哪些屬性是可定製的,此外還描述了可定製屬性與PropertyEditor的對應關係。BeanInfo與JavaBean之間的對應關係,通過兩者之間規範的命名確立:對應JavaBean的BeanInfo採用如下的命名規範:<Bean>BeanInfo。當JavaBean連同其屬性編輯器相同的元件註冊到IDE中後,當在開發介面中對JavaBean進行定製時,IDE就會根據JavaBean規範找到對應的BeanInfo,再根據BeanInfo中的描述資訊找到JavaBean屬性描述(是否開放、使用哪個屬性編輯器),進而為JavaBean生成特定開發編輯介面。

    dt.jar裡面主要是swing元件的BeanInfo。IDE根據這些BeanInfo顯示這些元件以及開發人員如何定製他們。

2、rt.jar

rt.jar是runtime的歸檔。Java基礎類庫,也就是Java doc裡面看到的所有的類的class檔案。

 rt.jar 預設就在Root Classloader的載入路徑裡面的,而在Claspath配置該變數是不需要的;同時jre/lib目錄下的其他jar:jce.jar、jsse.jar、charsets.jar、resources.jar都在Root Classloader中。

3、tools.jar

    tools.jar 是系統用來編譯一個類的時候用到的,即執行javac的時候用到

    javac XXX.java

    實際上就是執行

    java -Calsspath=%JAVA_HOME%\lib\tools.jar xx.xxx.Main XXX.java

    javac就是對上面命令的封裝 所以tools.jar 也不用加到classpath裡面。

4、其他jar包

jar包     用途 
axis.jar SOAP引擎包(Simple Object Access Protocol,簡單物件訪問協議) 
commons-discovery-0.2.jar 用來發現、查詢和實現可插入式介面,提供一些一般類例項化、單件的生命週期管理的常用方法. 
jaxrpc.jar Axis執行所需要的元件包(Apache Extensible Interaction System 即阿帕奇可擴充套件互動系統,是一個soap引擎) 
saaj.jar 建立到端點的點到點連線的方法、建立並處理SOAP訊息和附件的方法,以及接收和處理SOAP錯誤的方法.   
wsdl4j-1.5.1.jar Axis執行所需要的元件包 
activation.jar JAF框架的jar包 
annotations-api.jar 使用註解所需
jar ant.jar 用於自動化呼叫程式完成專案的編譯,打包,測試等 
aopalliance-1.0.jar 支援Spring AOP 
asm-2.2.3.jar ASM位元組碼庫 
asm-commons-2.2.3.jar ASM位元組碼庫 
asm-util-2.2.3.jar Java位元組碼操縱和分析框架 
aspectjrt.jar 處理事務和AOP所需的包 
aspectjweaver.jar 處理事務和AOP所需的包 
axiom-api-1.2.7.jar Axis 物件模型 
axiom-impl-1.2.7.jar Axis 物件模型 
bcprov-jdk15-140.jar 基於java1.5 的加密演算法實現 
bfmclientmodel.jar 使用WebSphere所需jar包 
bpcclientcore.jar 使用WebSphere所需jar包 
bpe137650.jar 提供遠端訪問BPE容器的實現。  
bsh-2.0b4.jar 解決負載邏輯運算 
c3p0-0.9.0.jar 開放原始碼的JDBC連線池 (JDBC3 Connection and Statement Pooling
cglib-nodep-2.1_3.jar Spring中自動代理所需jar包 
cobertura.jar 測量測試覆蓋率 
commons-beanutils-1.7.0.jar 動態的獲取/設值Java Bean的屬性 
commons-chain-1.1.jar 實現責任鏈設計模式的Java 類庫 
commons-codec-1.3.jar 用來處理常用的編碼方法的工具類包,例如DES、SHA1、MD5、Base64等等 
commons-collections-3.1.jar 對標準java Collection的擴充套件 
commons-collections.jar 對標準java Collection的擴充套件 
commons-digester-1.8.jar 用於處理struts-config.xml配置檔案 
commons-fileupload-1.1.1.jar struts上傳檔案 
commons-httpclient-3.1.jar 用來簡化HTTP客戶端與伺服器端進行各種通訊程式設計實現 
commons-io-1.1.jar 針對java.io.InputStream和Reader進行了擴充套件 
commons-lang-2.4.jar 對java.lang.*的擴充套件 
commons-logging-1.1.1.jar 日誌包 
commons-pool-1.3.jar 實現物件池化框架 
commons-validator-1.3.1.jar 用來把驗證規則程式提取出來,以供重複使用 
db2jcc.jar java連線DB2所需jar 
db2jcc_license_cu.jar java連線DB2所需jar 
dom4j-1.6.1.jar 解析XML 
ehcache-1.2.4.jar hibernate的二級快取如果用ehcache的時候需要此jar包 
emf.jar 基於Eclipse的模型框架 
ezmorph-1.0.6.jar 使用JSON所需的jar包 
FastInfoset-1.2.2.jar 使用WebService所需的jar包 
freemarker-2.3.8.jar Strus2支援的一種表現層框架 
geronimo-activation_1.1_spec-1.0.2.jar Apache Geronimo所帶jar包, 
geronimo-annotation_1.0_spec-1.1.1.jar Apache Geronimo所帶jar包 
geronimo-javamail_1.4_spec-1.3.jar Apache Geronimo所帶jar包 
geronimo-jaxws_2.1_spec-1.0.jar Apache Geronimo所帶jar包 
geronimo-jms_1.1_spec-1.1.1.jar Apache Geronimo所帶jar包 
geronimo-servlet_2.5_spec-1.2.jar Apache Geronimo所帶jar包 
geronimo-stax-api_1.0_spec-1.0.1.jar Apache Geronimo所帶jar包 
hibernate3.jar Hibernate3的核心jar包 
htmclientmodel.jar 使用WebSphere所需jar包 
jakarta-oro.jar 一套文字處理工具,提供per15.0相容的表示式,AWK-like表示式,Glob表示式。 
javassist.jar Javassist 位元組碼直譯器 
jaxb-api-2.1.jar 使用WebService所需的jar包 
jaxb-impl-2.1.7.jar 使用CXF所需jar包 
jaxb-xjc-2.1.7.jar 使用CXF所需jar包 
jaxen-1.1.1.jar 解析XML 
jcifs-1.2.22.jar 實現單點登陸 
jdom2-1.0.jar 解析XML 
jdom-1.0.jar 解析XML 
jettison-1.0.1.jar 使用CXF所需jar包 
jetty-6.1.9.jar Jetty Http伺服器jar 
jetty-util-6.1.9.jar Jetty Http伺服器jar 
jra-1.0-alpha-4.jar 使用CXF所需jar包 
js-1.6R7.jar 使用CXF所需jar包 
json-lib-2.2.3-jdk13.jar 使用JSON所需的jar包 
jsonplugin-0.25.jar strus2的JSON外掛 
jsr311-api-0.8.jar 使用CXF所需jar包 
jstl.jar JSTL標籤庫 
jta.jar 標準的 JAVA 事務處理介面 
junit.jar 用於單元測試 
jxl.jar 通過java操作excel表格的工具類庫 

ldap.jar JNDI目錄服務和LDAO伺服器所需的jar 
ldapbp.jar JNDI目錄服務和LDAO伺服器所需的jar 
log4j-1.2.15.jar 提供日誌功能 
mail.jar java傳送郵件jar包 
neethi-2.0.4.jar 使用CXF所需jar包 
odmg-3.0.jar ODMG是一個ORM的規範,Hibernate實現了ODMG規範,這是一個核心的庫 
ognl-2.6.11.jar struts2中OGNL語言 
ojdbc14.jar Oracle資料庫驅動包 
opensaml-1.1.jar 使用CXF所需jar包 
oro-2.0.8.jar Validator框架所需的jar包 
oscache-2.1.jar Java 物件的快取工具 
poi-3.1-FINAL-20080629.jar 操作exce所需jar包 
poi-contrib-3.1-FINAL-20080629.jar 操作exce所需jar包 
poi-ooxml-3.6-20091214.jar 提供對office的word、excel、visio及ppt的操作 
poi-ooxml-schemas-3.6-20091214.jar 提供對office的word、excel、visio及ppt的操作 
poi-scratchpad-3.1-FINAL-20080629.jar 提供對office的word、excel、visio及ppt的操作 
processCommon.jar IBM WebSphere 執行所需jar 
ProcessCommonLibrary.jar IBM WebSphere 執行所需jar 
processIdentity.jar IBM WebSphere 執行所需jar 
ProcessInformation.jar 程序監視軟體包 
proxool-0.9.1.jar 資料庫連線池 
proxool-cglib.jar 資料庫連線池 
quartz-1.6.0.jar 開源作業排程框架 
saaj-api-1.3.jar 使用axis所需的jar 
saaj-impl-1.3.2.jar 使用axis所需的jar 
serializer-2.7.1.jar XML序列化 
slf4j-jdk14-1.5.6.jar 整合各種日誌框架的工具 
spring208.jar spring核心框架 
spring-ldap-1.2-RC1.jar spring下LDAP 
spring-mock.jar spring的測試框架 
standard.jar 使用JSTL標籤庫所需的jar 
stax-api-1.0.1.jar 解析XML 
struts2-core-2.0.14.jar struts2核心jar 
struts2-spring-plugin-2.0.6.jar struts2整合Spring所需jar 
taglibs-datetime.jar Apache開源組織提供標籤庫,用於格式化日期。 
taglibs-mailer.jar 用於傳送郵件 
taglibs-string.jar Apache開源組織提供標籤庫,用於對String的操作。 
task137650.jar Portal技術在SOA系統整合應用中實現所需的jar 
utility.jar Apache開源組織提供標籤庫 
velocity-1.5.jar 一個免費的開源模板框架 
wsdl4j-1.6.2.jar 用來解析服務的WSDl檔案 
wss4j-1.5.4.jar 建立CXF所需jar 
wstx-asl-3.2.6.jar 建立CXF所需jar 
xbean-spring-2.8.jar 使用xfire所需jar 
xerces-2.6.2.jar XML解析器 
xfire-all-1.2.6.jar 用於實現WebService 
XmlSchema-1.1.jar 使用xfire所需jar 

xwork-2.0.7.jar WebWork核心jar

JAR包與描述對照表 注:jar包尾後的版本號不代表當前最高版本
activation-1.1.jar Sun的JavaBeans Activation Framework(JAF),JavaMail要執行必須依賴於它的支援
asm-3.0.jar
asm-commons-2.2.3.jar
asm-util-2.2.3.jar
asm是一個輕量級位元組碼處理和分析框架
alveole-struts2.jar
alveole-tools.jar
 
aspectjtools-1.5.3.jar Aspect提供的註釋類庫和相應的解析類庫
atomikos-util.jar 資料庫提供分散式事務支援
c3p0-0.8.5.2.jar C3PO是一個數據庫連線池
cglib-nodep-2.2.jar CGLIB是一個強大的高質量高效能的程式碼生成庫,在執行時可以用它來擴充套件Java類
commons-attributes-api.jar Apache Commons包中的一個,包含了一些屬性的api
commons-beanutils-1.6.jar Apache Commons包中的一個,包含了一些Bean工具類類
commons-chain-1.1.jar  
commons-codec-1.3.jar  
commons-collections-3.2.jar Apache Commons包中的一個,包含了一些Apache開發的集合類,功能比java.util.*強大
commons-configuration.jar Apache Commons包中的一個,用於協助讀取配置和首選項檔案
commons-digester-1.8.jar Apache Commons包中的一個,通過它可以很方便的解析xml檔案生成java物件
commons-fileupload.jar Apache Commons包中的一個,是一個通過Http接收上傳的檔案並處理結果檔案的庫
commons-lang-2.1.jar Apache Commons包中的一個,包含了一些資料型別工具類,是java.lang.*的擴充套件
commons-httpclient-3.0.jar Apache Commons包中的一個,提供一個框架啊處理http客戶端的擴充套件
commons-io.jar     Apache Commons包中的一個,java.io.*的擴充套件,輸入輸出,支援檔案上傳
commons-logging-1.1.1.jar Apache Commons包中的一個,包含日誌功能
commons-logging-api-1.1.jar Apache Commons包中的一個,Commons Logging應用介面,一種超薄介面卡允許其他可配置橋連線
commons-validator-1.3.0.jar Apache Commons包中的一個,struts使用它進行表單驗證
dom4j-1.6.1.jar     dom4j XML 解析器
ezmorph-1.0.4.jar json和java轉化的輔助工具
freemarker-2.3.8.jar freemarker表現層模板工具
hessian-3.1.3.jar 一個輕量級的remoting onhttp工具,使用簡單的方法提供了RMI的功能
htmlparser.jar 強大的html解析器
httpsqs4j.jar 一款基於 HTTP GET/POST 協議的輕量級開源簡單訊息佇列服務
ibatis-2.3.3.720.jar iBATIS提供的持久層框架包括SQL Maps和Data Access Objects(DAO)
jamon-2.7.jar 一個小巧的,免費的,高效能的,執行緒安全的效能監測工具
java_memcached-release.jar memcached連線的java客戶端
jfreechart-1.0.1.jar 使用java生成圖表的工具
jcommon-1.0.8.jar 使用java生成圖表的工具
json-lib-2.2-jdk15.jar json和java轉化的輔助工具
jta.jar Java事務API,為J2EE平臺提供了分散式事務服務
junit-3.8.1.jar 是一個開放原始碼的Java測試框架,用於編寫和執行可重複的測試。他是用於單元測試框架體系xUnit的一個例項
jxl.jar 通過java操作excel表格的工具類庫
log4j-1.2.9.jar 通過使用Log4j,我們可以控制日誌資訊輸送的目的地是控制檯、檔案、GUI元件、甚至是套介面伺服器
lucene-core-2.3.2.jar 是一個全文檢索引擎的架構,提供了完整的查詢引擎和索引引擎
mongo-2.2.jar java連線mongodb客戶端介面
morphia.jar 是一個輕量級的型別安全的Java類庫,用來將在MongoDB和Java物件之間進行對映
mysql-connector-java.jar mysql連線驅動
ognl-2.6.11.jar OGNL表示式,支援EL
oscache-2.3.2.jar Java物件的快取工具,比ehcache的優勢在於頁面快取
poi-3.0.1.jar apache工具,用於操作pdf和excel的工具類
quartz-1.6.0.jar 自動任務處理功能類包
proxool-0.9.1.jar Proxool JDBC 連線池 工具
servlet.jar  
spring-2.0.2.jar  
spring-2.0.2.jar  
velocity-1.6.3-dep.jar
velocity-tools-1.4.jar    
velocity基於java的模板引擎,允許用簡單的模板語言來引用java定義的物件
xwork-core-2.1.6.jar web work的核心庫