版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于HTTP協(xié)議的多線程下載器目錄開(kāi)發(fā)背景介紹系統(tǒng)的開(kāi)發(fā)背景系統(tǒng)分析系統(tǒng)需求分析以及功能模塊的介紹系統(tǒng)實(shí)現(xiàn)設(shè)計(jì)與實(shí)現(xiàn)結(jié)束語(yǔ)
開(kāi)發(fā)背景目前國(guó)內(nèi)下載器有很多種,有基于HTTP下載的,也有基于P2P下載的。HTTP是HyperTextTransportationProtocol(超文本傳輸協(xié)議)的縮寫(xiě),它是計(jì)算機(jī)之間交換數(shù)據(jù)的方式。HTTP下載模式是最經(jīng)典的下載方式,絕大部分的下載軟件是從基于HTTP下載模式發(fā)展來(lái)的。一個(gè)線程(thread)是“進(jìn)程”中某個(gè)單一順序的控制流。當(dāng)一個(gè)任務(wù)包含多個(gè)操作時(shí),我們就可以用到多線程。多線程的產(chǎn)生明顯的提高了CPU的利用率。開(kāi)發(fā)背景前面說(shuō)過(guò),HTTP是超文本傳輸協(xié)議,我們平常上網(wǎng)的瀏覽器(比如IE)的“本職工作”就是解讀按照這種協(xié)議制作的網(wǎng)頁(yè)和進(jìn)行資源下載。使用IE直接進(jìn)行下載非常方便,但是它有兩個(gè)非常明顯的不足:
IE直接下載沒(méi)有實(shí)現(xiàn)“斷點(diǎn)續(xù)傳”
IE直接下載沒(méi)有實(shí)現(xiàn)多線程系統(tǒng)分析根據(jù)對(duì)下載的功能特性進(jìn)行分析,可以將下載器的需求簡(jiǎn)單的整理為如下幾點(diǎn):可視化界面;支持多線程下載(提高下載速度);支持?jǐn)帱c(diǎn)續(xù)傳;系統(tǒng)分析根據(jù)系統(tǒng)需求分析,系統(tǒng)需實(shí)現(xiàn)新建下載、暫停下載、開(kāi)始下載、刪除下載四個(gè)基本功能。當(dāng)系統(tǒng)在存在未完成任務(wù)退出時(shí)需保存下載任務(wù)的斷點(diǎn)信息;同時(shí)啟動(dòng)程序時(shí)應(yīng)導(dǎo)入未完成任務(wù)的下載信息。此外,系統(tǒng)還需要設(shè)計(jì)一個(gè)懸浮窗來(lái)實(shí)現(xiàn)快速退出,隱藏/顯示主界面等功能。系統(tǒng)用例圖系統(tǒng)流程圖系統(tǒng)實(shí)現(xiàn)所需開(kāi)發(fā)環(huán)境
1.操作系統(tǒng):Windows或
Linux系統(tǒng)2.開(kāi)發(fā)環(huán)境:Eclipse3.開(kāi)發(fā)工具包:JDK主界面主界面模塊是界面和按鈕監(jiān)聽(tīng)事件的集合,用戶每按一個(gè)按鈕系統(tǒng)就會(huì)執(zhí)行不同的事件。下圖是MainFrame模塊的主機(jī)面:下載表格模型模塊下載表格模型(DownTableModel)即一個(gè)顯示下載條目表格模型,用戶增加的下載條目都會(huì)顯示在表格中。下載表格模型界面如下圖:新建下載模塊根據(jù)需求分析,當(dāng)用戶點(diǎn)擊新建下載按鈕,則系統(tǒng)彈出一個(gè)新建下載對(duì)話框,里面包含一個(gè)輸入url的文本框,一個(gè)保存地址的文本框,一個(gè)保存文件名的文本框。同時(shí)還有三個(gè)按鈕(瀏覽、確實(shí)、取消)和一個(gè)選擇線程數(shù)目下拉框。新建下載對(duì)話框下載模塊下載(Download)模塊主要包含如下幾個(gè)步驟:獲得下載連接和判斷響應(yīng)碼創(chuàng)建下載線程和分配每個(gè)線程下載塊的大小實(shí)時(shí)設(shè)定表格中下載任務(wù)的狀態(tài)下載模塊流程圖線程下載模塊線程下載(DownloadThread)模塊主要用于實(shí)現(xiàn)某個(gè)線程具體下載的操作,如設(shè)定每個(gè)線程不同時(shí)刻的下載開(kāi)始點(diǎn)和結(jié)束點(diǎn),同時(shí)對(duì)目標(biāo)文件進(jìn)行I/O流操作,及時(shí)將下載信息寫(xiě)入目標(biāo)文件。此模塊的關(guān)鍵點(diǎn)在于設(shè)定每個(gè)線程的HTTP請(qǐng)求頭,關(guān)鍵代碼如下:httpConn.setRequestProperty("RANGE",bytes);//bytes為一個(gè)字符串:"bytes="+(this.start+pleted)+"-"this.end;存取斷點(diǎn)信息模塊存取斷點(diǎn)信息(LoadProperty)模塊簡(jiǎn)單來(lái)說(shuō)可以劃分為兩個(gè)子模塊:保存信息模塊和加載信息模塊。模塊結(jié)構(gòu)圖如下:懸浮窗模塊懸浮窗在系統(tǒng)啟動(dòng)時(shí)同主界面一同打開(kāi),一般位于右上角(用戶可自由拖動(dòng)其位置),用于快速退出系統(tǒng)和顯示/隱藏主界面等。界面效果如下圖所示:結(jié)術(shù)語(yǔ)通過(guò)此次畢業(yè)設(shè)計(jì),我對(duì)JavaSE平臺(tái)下的開(kāi)發(fā)和應(yīng)用有了一個(gè)整體的了解,尤其是使用Swing進(jìn)行界面開(kāi)發(fā):其核心就
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- DB37T 4791-2024煤礦井下超大斷面硐室施工技術(shù)規(guī)范
- 江西省豐城市第九中學(xué)2025屆高三(復(fù)讀班)上學(xué)期第三次段考政治試卷(含答案)
- 讀書(shū)社團(tuán)活動(dòng)策劃(9篇)
- 歌頌教師主題演講稿三分鐘歌頌教師的主題集合4篇
- 光船租賃合同(2篇)
- 《職場(chǎng)溝通》電子教案 項(xiàng)目五 職場(chǎng)溝通中的禮儀準(zhǔn)備
- 2025年紫外光固化油墨合作協(xié)議書(shū)
- 2025年付里葉紅外分光光度計(jì)項(xiàng)目合作計(jì)劃書(shū)
- 2025年低溫超導(dǎo)材料項(xiàng)目發(fā)展計(jì)劃
- 賣(mài)車(chē)場(chǎng)地租賃協(xié)議
- 危險(xiǎn)源辨識(shí)及分級(jí)管控管理制度
- GB/T 19752-2024混合動(dòng)力電動(dòng)汽車(chē)動(dòng)力性能試驗(yàn)方法
- 和員工簽股權(quán)合同范本
- 07FD02 防空地下室電氣設(shè)備安裝
- 《工程倫理》題集
- 江蘇2024年江蘇省新聞出版學(xué)校招聘人員筆試歷年典型考題及考點(diǎn)附答案解析
- 四川省成都市2023-2024學(xué)年高二歷史上學(xué)期期末聯(lián)考試題
- 河北省2024屆高三大數(shù)據(jù)應(yīng)用調(diào)研聯(lián)合測(cè)評(píng)(Ⅵ)英語(yǔ)試題含答案
- 成人手術(shù)后疼痛評(píng)估與護(hù)理-中華護(hù)理學(xué)會(huì)團(tuán)體標(biāo)準(zhǔn)(2023)課件
- 《金屬基增容導(dǎo)線技術(shù)條件+第2部分:鋁包殷鋼芯耐熱鋁合金絞線》
- 園藝植物栽培學(xué)智慧樹(shù)知到期末考試答案章節(jié)答案2024年浙江農(nóng)林大學(xué)
評(píng)論
0/150
提交評(píng)論