資源描述:
《【計算機科學(xué)與技術(shù)專業(yè)】【畢業(yè)設(shè)計】基于Java的下載工具的設(shè)計與實現(xiàn)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、(20屆)本科畢業(yè)論文基于Java的下載工具的設(shè)計與實現(xiàn)摘要:本設(shè)計采用Java設(shè)計一個具有斷點續(xù)傳和多線程下載功能的下載工具。整體使用Java語言編寫,實現(xiàn)其基本功能,并在MyEclipse平臺上運行。能對指定的資源進行下載,并解決資源下載中斷時,不能在原有的基礎(chǔ)上繼續(xù)下載,以及下載速度偏低等問題。本設(shè)計實現(xiàn)了基本GUI操作界面,操作簡單。但是下載文件路徑需要指定是個問題,需要改進。當(dāng)然還有許多問題也待完善。關(guān)鍵字:Java;多線程;斷點續(xù)傳;SwingTheDesignandImplementationofDo
2、wnloadingtoolbasedonJavaAbstract:ThisdesignuseJavatowritewhichhastheMultithreadDownloadandResumeBrokenTransferfunctions.UsetheJavalanguagetoachieveitsbasicfunctionsontheMyEclipseplatform.Itcandownloadtheappointedfiles,alsogivethesolutiontodownloadinterruptiona
3、nddownloadspeedduetofastproblems.ThisdesignachievedaneasyGUIinterface,simpleoperationisrequired.Butthedownloadpathmustbespecifiedisaproblem,shouldbeimproved.Alsomanyotherproblemsmayneedtobeimproved.Keywords:Java;Multithreading;Swing;Resumebrokentransfer目錄1.引言1
4、1.1系統(tǒng)背景11.2系統(tǒng)意義11.3網(wǎng)絡(luò)構(gòu)架22.系統(tǒng)分析22.1設(shè)計概述22.1.1設(shè)計目標(biāo)22.1.2開發(fā)環(huán)境32.2.相關(guān)主要技術(shù)簡介32.2.1Java語言簡介32.2.2多線程技術(shù)簡介32.2.3HTTP1.0協(xié)議42.2.4斷點續(xù)傳的技術(shù)42.3可行性分析52.3.1技術(shù)可行性分析52.3.2經(jīng)濟可行性分析62.3.3操作可行性分析73.概要設(shè)計83.1系統(tǒng)結(jié)構(gòu)圖93.2功能流程圖94.詳細(xì)設(shè)計104.1獲取網(wǎng)絡(luò)資源104.1.1功能說明114.1.2設(shè)計說明114.1.3核心代碼124.2線程任務(wù)分
5、配124.2.1功能說明134.2.2設(shè)計說明134.2.3設(shè)計流程134.3創(chuàng)建下載任務(wù)134.4任務(wù)下載134.4.1功能說明154.4.2設(shè)計說明154.4.3核心流程194.5事件監(jiān)聽器設(shè)計204.5.1功能說明204.5.2設(shè)計說明214.6下載控制器設(shè)計214.6.1功能說明224.6.2設(shè)計說明224.6.3功能流程274.7顯示控制器設(shè)計264.7.1功能說明264.7.2設(shè)計說明264.8斷點記錄文件設(shè)計284.8.1功能說明274.8.2設(shè)計說明274.8.3保存斷點線程流程圖284.9文件操作
6、284.9.1功能說明284.9.2設(shè)計說明304.9.3文件操作流程304.10GUI界面設(shè)計314.10.1功能說明314.10.2設(shè)計說明315.設(shè)計問題總結(jié)345.1斷點設(shè)置問題345.2下載速度統(tǒng)計問題34致謝36參考文獻資料361.引言1.1系統(tǒng)背景隨著互聯(lián)網(wǎng)應(yīng)用范圍不斷發(fā)展,網(wǎng)絡(luò)包含的信息資源日益增多,互聯(lián)網(wǎng)用戶可以通過網(wǎng)絡(luò)下載所需的數(shù)據(jù)資源保存在本地磁盤當(dāng)中,因此相應(yīng)的基于網(wǎng)絡(luò)的下載工具應(yīng)運而生。對于一個網(wǎng)絡(luò)下載工具,有兩個問題一直阻礙著下載技術(shù)的發(fā)展:速度和下載中斷問題。幾年來,下載技術(shù)也在不停地
7、發(fā)展。最原始的下載功能僅僅是個“下載”過程,即從WEB服務(wù)器上連續(xù)地讀取文件。其最大的問題是,由于網(wǎng)絡(luò)的不穩(wěn)定性,一旦連接斷開使得下載過程中斷,就不得不全部從頭再來一次。隨后,“斷點續(xù)傳”的概念就出來了,顧名思義,就是如果下載中斷,在重新建立連接后,跳過已經(jīng)下載的部分,而只下載還沒有下載的部分。在“網(wǎng)絡(luò)螞蟻”軟件流行開后,許多下載軟件也都紛紛效仿,是否具有“多線程下載”技術(shù)、甚至能支持多少個下載線程都成了人們評測下載軟件的要素?!岸嗑€程下載”的基礎(chǔ)是WEB服務(wù)器支持遠(yuǎn)程的隨機讀取,也即支持“斷點續(xù)傳”。這樣,在下載
8、時可以把文件分成若干部分,每一部分創(chuàng)建一個下載線程進行下載。至于多線程下載的原理是這樣的:通常服務(wù)器同時與多個用戶連接,用戶之間共享帶寬。如果N個用戶的優(yōu)先級都相同,那么每個用戶連接到該服務(wù)器上的實際帶寬就是服務(wù)器帶寬的N分之一。可以想象,如果用戶數(shù)目較多,則每個用戶只能占有可憐的一點帶寬,下載將會是個漫長的過程。但是伴隨著基于網(wǎng)絡(luò)的多線程下載技術(shù)的出現(xiàn),如