日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Java FTP客戶端類庫比較(一)

瀏覽:294日期:2024-06-07 13:28:38
內容: 摘要: 本文介紹了在JAVA中如何使用java現有的可用的庫來編寫FTP客戶端代碼。文章比較了一系列詳盡的FTP庫,從正反兩面介紹了每個庫,幫助決策者根據自己的需要選擇其中最合適的一個。另外,本文解釋了當一個庫被替換時,fagade 樣式如何幫助改變對其的管理。最后作者Jean-Pierre Norguet討論并提出了一些由于缺乏權威規范而引起的問題。(2003/4/4) 讓我們設想這樣一個情形--我們想寫一個純Java的從一個遠程計算機上運行的FTP服務器上下載文件的應用程序;我們還希望能夠過濾那些供下載的遠程文件的基本文件信息如文件名、數據或者文件大小。 盡管從頭開始寫一個FTP協議處理程序是可能的,并且也許很有趣,但這項工作也是困難、漫長并且存在著潛在的危險。因為我們不愿意親自花時間、精力、或者金錢去寫這樣的一個處理程序,所以我們轉而采用那些已經存在的可重用的組件。并且很多的庫存在于萬維網(WWW)上。使用FTP客戶端庫,一個下載文件的程序可以用Java簡單地寫成這樣: FTPClient ftpClient = new FTPClient(); ftpClient.connect('ftp.foo.com', 'user01', 'pass1234'); ftpClient.download('C:Temp', 'README.txt'); // Eventually other operations here ... ftpClient.disconnect(); 找一個優秀的適合我們需要的java FTP 客戶端庫并不像看起來那么簡單。相反這是一項非常痛苦復雜的工作。首先找到一個FTP客戶端庫需要一些時間,其次,在我們找到所有的存在的庫后,我們該選哪一個呢?每個庫都適合不同的需求。這些庫在性能上是不等價的,并且它們的設計上有著根本上的差別。每個類庫都各具特點并使用不同的術語來描述它們。因而,評價和比較FTP客戶端庫是一件困難的事情。 使用可重用組件是一種值得提倡的方法,但是在這種情況下,剛開始往往是令人氣餒的。后來或許有點慚愧:在選擇了一個好的FTP庫后,其后的工作就非常簡單了,按簡單的規則來就行了。 本文的目的是使選擇的過程更簡短、容易、有價值。首先我列舉了所有的可用的FTP客戶端庫,然后定義并描述了一系列的FTP客戶端庫應該在某方面提出的相關標準。最后,我會描述一下這些庫的性能等彼此比較的結果。所有的這些都為我們做一個快速的,可靠的,長期的決定提供了所需的東西。 FTP 的JDK支持 注釋959(RFC959)需要FTP的參考規范,SUN微系統在JDK中提供了一個RFC959接口,但是它是內在的、沒有正式文檔記載的、并且沒有提高任何源代碼。盡管RFC959目前還沒有清楚的說明,它實際上是RFC1738的一個公共接口的實現的后續--URL規范,如圖1所示 IMG http://www.javaworld.com/javaworld/jw-04-2003/images/jw-0404-ftp1-thumb.gif[/IMG] 一個RFC1738實現在JDK中是作為標準被提供的,它為FTP傳輸操作完成合適的工作。它是公開的,并有正式文檔說明,而且應該提供源代碼。我們寫出如下語句來使用這個實現: URL url = new URL('ftp://user01:pass1234@ftp.foo.com/README.txt;type=i'); URLConnection urlc = url.openConnection(); InputStream is = urlc.getInputStream(); // 下載 OutputStream os = urlc.getOutputStream(); // 上傳 FTP客戶端的JDK支持嚴格的遵循標準建議,但是它具有一些缺點: 首先,它和第三方FTP類庫有著根本的區別,RFC959實現優于RFC1738的; 第二,大多數臺式機的FTP客戶端工具中都是基于RFC959實現的,很多的JAVA程序使用這些工具來連接到FTP服務器。由于喜好的原因,這些工具大部分需要采用基于RFC959的庫。 第三,URL和URLConnection類只是為通訊打開流。SUN的庫沒有為將原始的FTP服務器的回應信息組織構成更多可用的Java的對象如String, File, RemoteFile, 或 Calendar這些提供任何直接的支持。因此我們必須寫更多的代碼來將數據寫入文件或者生成一個目錄表。 第四,正如RFC1738中的3.2.5節所說明的,“最優化,FTP URLs要求在每次操作后都要將連接控制關閉。當傳輸很多小的文件的時候,這是相當不經濟的,而且效率相當低。而且,強限制的FTP服務器可能判斷這是一個惡意的網絡攻擊或濫用高層通訊,進而會禁止其進一步的訪問。 最后,它缺乏一些有用的特征。 由于上述的原因,使用一個第三者庫是更優越的。下面的就列舉出了一些可用的第三者代替方案:庫的比較: 下面的列表簡單的概述了我在本文中比較的庫。它們都遵循FTP參考規范,下面我將列舉提供者名字和庫的名稱(斜體字表示的部分),資源中包含了到每個產品的站點的鏈接。為了啟動對庫的使用,我還在本文中論及了主要的FTP客戶端類。1. JScape, iNet Factory: com.jscape.inet.ftp.Ftp 2. /n software, IP*Works: ipworks.Ftp 3. Enterprise Distributed Technologies, Java FTP Client Library: com.enterprisedt.net.ftp.FTPClient 4. IBM alphaWorks, FTP Bean Suite: com.ibm.network.ftp.protocol.FTPProtocol 5. SourceForge, JFtp: net.sf.jftp.net.FtpConnection 6. The Jakarta Project, Jakarta Commons/Net: org.apache.commons.net.ftp.FTPClient 7. JavaShop JNetBeans: jshop.jnet.FTPClient 8. Sun, JDK: sun.net.ftp.FtpClient 9. Florent Cueto, JavaFTP API: com.cqs.ftp.FTP 10.Bea Petrovicova, jFTP: cz.dhl.ftp.Ftp 11.The Globus Project, Java CoG Kit: org.globus.io.ftp.FTPClient 注: 1.在我寫本文的同時,IBM正在評估將它的alphaWorks FTP Bean Suite 發布到網上是否合適。但是目前已經取消了所有的用戶下載權限。 2.Jakarta Commons/Net 是Savarese NetComponents(不再發展)的一個臨時性替代。 3.JavaShop JNetBeans似乎被拋棄了,在我寫本文的同時,其網站已經有一個多月沒有開了,我也從沒收到任何對我的請求支持的回訊。Matrix經javaworld授權翻譯您可以點擊-watermark查看翻譯作者的詳細信息.加入matrix,與java共舞: www.matrix.org.cn Java, java, J2SE, j2se, J2EE, j2ee, J2ME, j2me, ejb, ejb3, JBOSS, jboss, spring, hibernate, jdo, struts, webwork, ajax, AJAX, mysql, MySQL, Oracle, Weblogic, Websphere, scjp, scjd
標簽: Java
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
蜜臀久久久99精品久久久久久| 国语对白精品一区二区| 国产精品115| 亚洲+小说+欧美+激情+另类| 丝袜亚洲另类欧美| 在线视频观看日韩| 日韩一区电影| 88xx成人免费观看视频库| 日韩一区二区三区免费播放| www.com.cn成人| 999国产精品视频| 999久久久国产精品| 99精品网站| 欧美不卡高清| 在线综合亚洲| 中文字幕免费精品| 日韩精品三区四区| 日本国产欧美| 国产精品一国产精品k频道56| 国产精品色在线网站| 国产美女久久| 精品久久国产一区| sm久久捆绑调教精品一区| 日韩黄色大片| 精品一区在线| 中文精品视频| 日本a级不卡| 国产免费av国片精品草莓男男| 国产日韩视频在线| 国产成人精品三级高清久久91| 欧美精品资源| 视频一区在线视频| 国产精品中文| 成人美女视频| 国产亚洲激情| 色狠狠一区二区三区| 日本午夜精品久久久久| 久久精品国产亚洲一区二区三区| 日本а中文在线天堂| 婷婷久久一区| 色狠狠一区二区三区| 国产精品乱战久久久| 中文在线免费视频| 丝袜美腿亚洲一区二区图片| 久久国产精品色av免费看| 精品国产网站| 2023国产精品久久久精品双| 亚洲精品黄色| 色爱综合网欧美| 国产精品嫩草99av在线| 日韩一二三区在线观看| 精品国产鲁一鲁****| 一本一道久久a久久精品蜜桃| 日产欧产美韩系列久久99| 欧美日韩亚洲一区在线观看| 亚洲最新无码中文字幕久久| 首页亚洲欧美制服丝腿| 美女国产一区二区三区| re久久精品视频| 久久国产精品免费精品3p | 成人午夜毛片| 伊人久久成人| 久久亚洲精品伦理| 精品在线网站观看| 噜噜噜久久亚洲精品国产品小说| 国产精品亚洲综合在线观看| 久久人人88| 另类综合日韩欧美亚洲| 亚洲尤物在线| 色爱综合网欧美| 亚洲日本国产| 成人看片网站| 欧美日韩xxxx| 亚洲午夜视频| 乱一区二区av| 亚洲精品乱码久久久久久蜜桃麻豆 | 日韩一二三区在线观看| 欧洲精品一区二区三区| 欧美亚洲一级| 国产精品毛片在线| 成人福利av| 国产精品亚洲欧美| 视频一区欧美精品| 精品捆绑调教一区二区三区| 日本少妇一区二区| 老鸭窝亚洲一区二区三区| 秋霞影院一区二区三区| 国产精品色在线网站| 九九久久婷婷| 国产精品伦理久久久久久| 91亚洲精品视频在线观看| 精品日韩毛片| 成人在线视频区| 国产麻豆一区二区三区精品视频| 视频一区视频二区中文字幕| 免费不卡中文字幕在线| 国产成人精品一区二区三区免费| 青草国产精品| 日韩高清一区在线 | 欧美有码在线| 日韩中文字幕麻豆| 日韩一区电影| 国精品产品一区| 国产精品99久久免费| 日韩在线黄色| 亚洲精品一级二级三级| 免费看精品久久片| 午夜国产精品视频免费体验区| 欧美黄色网页| 日韩影院二区| 久久精品福利| 精品国产网站| 国产不卡精品在线| 久久男人av| 精品美女久久| 日产午夜精品一线二线三线| 婷婷亚洲精品| 日韩一区二区三区高清在线观看| 亚洲一区欧美| 中文字幕乱码亚洲无线精品一区| 在线视频免费在线观看一区二区| 黄色亚洲免费| 亚洲精华国产欧美| 亚洲少妇一区| 蜜桃视频在线观看一区| 蜜臀国产一区二区三区在线播放| 一区免费在线| 亚洲专区欧美专区| 水野朝阳av一区二区三区| 男人的天堂亚洲一区| 男人的天堂亚洲一区| 99国产精品99久久久久久粉嫩| 尹人成人综合网| 日本大胆欧美人术艺术动态| 亚洲精品麻豆| 久久黄色影视| 欧美成a人片免费观看久久五月天| 国产精品欧美三级在线观看| 国产精品1区在线| 国产一区二区三区亚洲综合| 国产美女高潮在线观看| 日韩在线短视频| 在线一区免费观看| 日韩精品福利一区二区三区| 久久国产视频网| 欧美成a人片免费观看久久五月天| 国产精品久久久久久妇女| 国产精品成人3p一区二区三区| 国产专区精品| 欧美日韩一二三四| 丝袜美腿一区二区三区| 欧美亚洲综合视频| 久久久久久夜| 麻豆精品视频在线观看免费| 色在线中文字幕| 美女久久网站| 国产精品亚洲综合色区韩国| 成人亚洲欧美| 蜜臀久久久久久久| 久久成人福利| 欧美成人午夜| 日本亚洲视频在线| 国产精品久久久久9999高清| 日本不卡免费高清视频在线| 99综合视频| 久久wwww| 香蕉人人精品| 911精品国产| 亚洲国产欧美日本视频| 羞羞答答国产精品www一本| av资源中文在线| 亚洲专区视频| 亚洲啊v在线| 午夜天堂精品久久久久| 国产中文在线播放| 亚洲精品乱码久久久久久蜜桃麻豆| 免费在线观看一区| 久久亚洲在线| 国产伦理久久久久久妇女| 91精品亚洲| 欧美日韩在线精品一区二区三区激情综合 | 麻豆久久一区| 久久久久免费av| 日韩成人午夜精品| 欧产日产国产精品视频| 欧美一级专区| 国产精品麻豆久久| 视频在线观看一区二区三区| 老色鬼精品视频在线观看播放| 亚洲精品一二三区区别| 欧美日韩亚洲一区二区三区在线| 久久久久99| 国产精品主播| aa亚洲婷婷| 色婷婷色综合| 日韩不卡一区二区| 免费欧美一区| 福利精品在线| 日韩精品视频中文字幕| 美女网站一区|