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的核心庫 |