欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

commons學習概覽

系統 1745 0
 可重用性是Jakarta Commons項目的靈魂所在。這些包在設計階段就已經考慮了可重用性問題。其中一些包,例如Commons里面用來記錄日志的Logging包,最初是為其他項目設計的,例如Jakarta Struts項目,當人們發現這些包對于其他項目也非常有用,能夠極大地幫助其他項目的開發,他們決定為這些包構造一個"公共"的存放位置,這就是Jakarta Commons項目。

  為了真正提高可重用性,每一個包都必須不依賴于其他大型的框架或項目。因此,Commons項目的包基本上都是獨立的,不僅是相對于其他項目的獨立,而且相對于Commons內部的大部分其他包獨立。雖然存在一些例外的情況,例如Betwixt包要用到XML API,但絕大部分只使用最基本的API,其主要目的就是要能夠通過簡單的接口方便地調用。

  不過由于崇尚簡潔,許多包的文檔變得過于簡陋,缺乏維護和支持,甚至有一部分還有錯誤的鏈接,文檔也少得可憐。大部分的包需要我們自己去找出其用法,甚至有時還需要我們自己去分析其適用場合。本文將逐一介紹這些包,希望能夠幫助你迅速掌握這一積累了許多人心血的免費代碼庫。

  說明:Jakarta Commons和Apache Commons是不同的,后者是Apache Software Foundation的一個頂層項目,前者則是Jakarta項目的一個子項目,同是也是本文要討論的主角。本文后面凡是提到Commons的地方都是指Jakarta的Commons。

  為了便于說明,本文把Commons項目十八個成品級的組件(排除了EL、Latka和Jexl)分成5類,如下表所示




commons分為3部分Commons Proper、Commons Sandbox和Commons Dormant
Commons Proper:提供了設計良好可重用的java組件,并都經過了廣泛、嚴格的測試。
Commons Sandbox:處于實驗、測試階段的組件。
Commons Dormant:處于停滯狀態,從Sandbox退出的,不活躍的組件,謹慎使用。
Commons Proper組件:

Codec——包含一些通用的編碼解碼算法。包括一些語音編碼器, Hex, Base64, 以及URL encoder。
BeanUtils——提供對 Java 反射和自省API的包裝,處理javabean的工具。
Betwixt——將JavaBeans與XML相互轉換。
Digester——基于規則的XML文檔解析,主要用于XML到Java對象的映射.
Email——處理e-mail
FileUpload——web應用中的 文件上傳 組件
IO——幫助進行IO功能開發
JXPath——使用XPath語法操作javabean的工具。
Lang——提供對java.lang包的擴展


Chain——對Chain of Responsibility(責任鏈)設計模式的實現。使多個對象都有機會處理請求, 從而避免請求的發送者和接收者之間的耦合關系。將這些對象連成一條鏈,并沿著這條鏈傳遞請求,直到有一個對象處理它為止。
CLI——處理命令行的命令的解析。
Attributes—— 支持源代碼級的元數據。
Collections——擴展和增加標準的 Java Collection框架。
Configuration——操作各種格式的配置文件。Properties文件 /XML文件 /JNDI /JDBC 數據源 /System properties /Applet parameters / Servlet parameters
Daemon——創建類似unix守護線程的java代碼,可以安全地執行一些后臺操作,線程不被某個應用程序控制,而是由操作系統控制 類似windows的service,可以設置一個服務依賴于另一個服務,一個服務關閉前必須先執行另一個服務。
DBCP——一個數據庫連接池
DbUtils——一個JDBC的工具類,比如可以將ResultSets生成javabean。

Discovery——提供工具來定位資源 (包括類) ,通過使用各種模式來映射服務/引用名稱和資源名稱。
EL——JSP 2.0引入的表達式
HttpClient——使用HTTP協議的客戶端開發框架

Jelly——Jelly能夠把XML轉換成可執行代碼,所以Jelly是一個基于XML與Java的腳本和處理引擎。 Jelly借鑒了JSP定指標簽,Velocity, Cocoon和Xdoclet中的腳本引擎的許多優點。Jelly可以用在命令行,Ant或者Servlet之中。
Jexl——Jexl是一個表達式語言,通過借鑒來自于Velocity的經驗擴展了JSTL定義的表達式語言。??
Launcher——跨平臺的java程序的啟動
Logging——提供的是一個日志(Log)接口(interface),同時兼顧輕量級和不依賴于具體的日志實現工具。 它提供給中間件/日志工具開發者一個簡單的日志操作抽象,允許程序開發人員使用不同的具體日志實現工具。用戶被假定已熟悉某種日志實現工具的更高級別的細節。JCL提供的接口,對其它一些日志工具,包括Log4J, Avalon LogKit, and JDK 1.4等,進行了簡單的包裝,此接口更接近于Log4J和LogKit的實現.
Math——Math 是一個輕量的,自包含的數學和統計組件,解決了許多非常通用但沒有及時出現在Java標準語言中的實踐問題.
Modeler—— 支持兼容JMX規范的MBeans開發。
Net——集合了網絡工具和協議工具的實現
Pool——Commons-Pool 提供了通用對象池接口,一個用于創建模塊化對象池的工具包,以及通常的對象池實現。
Primitives——對java原始類型的支持。
SCXML——處理SCXML
Transaction——事務處理,實現了多層次鎖、事務集合、事務文件的訪問。?
Validator——提供了一個簡單的,可擴展的框架來在一個XML文件中定義校驗器 (校驗方法)和校驗規則。支持校驗規則的和錯誤消息的國際化。
VFS——訪問各種文件系統,可以是本地文件、HTTP服務器上的文件、zip中的文件。
Commons Sandbox組件:

Compress——處理壓縮文件如tar, zip 和 bzip2 格式。
CSV——處理CSV文件
Exec——安全地處理外部進程
Finder——實現類似UNIX find命令的功能
I18n——處理軟件的I18n功能
Id——生成id號功能
Javaflow——捕捉程序運行狀態
JCI——java編譯接口
OpenPGP——處理加密方法OpenPGP.?
Pipeline——處理類似工作隊列的管道工具
Proxy——生成動態代理
--------------------------------org.apache.commons.beanutils.PropertyUtils;
copyProperties(a,b);//把相同類型b的屬性賦值給a
--------------------------------
在org.apache.commons包中提供了的一系列能簡化一些編程過程中常見問題的共通函數和類,使程序員能把主要精力集中在
構架,業務實現和優化而不是具體實現及驗證上,一言以蔽之,它能使我們避免重復的發明車輪。

commons學習概覽


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 一级做a爰片性色毛片视频图片 | 国产日韩一区 | 日韩一区在线视频 | 久久精品国产亚洲一区二区 | 亚洲涩涩 | 男女xx| 啊啊啊好紧好爽 | 精品一卡2卡三卡4卡乱码免费 | 最新国产视频 | va在线播放 | 亚洲精品成人 | 97婷婷狠狠成人免费视频 | 日本欧美国产精品第一页久久 | 午夜影音 | 天天操夜夜操夜夜操 | 二级黄绝大片中国免费视频 | 乱码中文字幕人成在线 | 国精品午夜dy8888狼人 | 亚洲午夜在线 | 日韩一级片在线免费观看 | 欧美在线观看19 | 国产日韩欧美一区 | 十六以下岁女子毛片免费 | 999在线| 亚洲字幕在线观看 | 久久综合狠狠色综合伊人 | 日韩无毛 | 成人自拍视频网 | 亚洲a级在线观看 | 欧美亚洲第一页 | 国产精品蜜芽在线观看 | 全免费午夜一级毛片一级毛 | 国产精品区一区二区三 | 亚洲欧洲视频在线观看 | 亚洲福利视频一区二区 | 国产小视频精品 | 亚洲国产成人av好男人在线观看 | 三级视频在线观看 | 欧美图片激情小说 | 欧美一区二区三区久久久 | 播播成人网|