freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于java的多線程跨平臺下載軟件的實踐畢業(yè)論文-閱讀頁

2024-11-27 22:00本頁面
  

【正文】 會返回一些關(guān)于其自身的信息 , 盡管并非是必需的) 。 在本例中 , 首部 ContentType 指定了 MIME 類型 HTML( text/html) ,其編碼類型是 ISO88591(這是針對美國英語資源的編碼標準) 。瀏覽器將把這些數(shù)據(jù)顯示給用戶 。 客戶端知道每種類型的請求將返回什么類型的數(shù)據(jù) , 并決定如何使用這些數(shù)據(jù) 。 根據(jù)長度和線程數(shù) , 確定各線程所下載 的數(shù)據(jù)范圍 。 給每個線程只需要傳遞其打開的文件句柄即可 。 這里不需要對文件加鎖 , 因為操作系統(tǒng)一級本身對文件的 I/O 有鎖的 , 我們的應用不用管 , 而且各個線程所寫的文件位置是不一樣的 , 每一線程負責下載和寫一段數(shù)據(jù) 。 等各線程都下 載完各自的數(shù)據(jù)塊后 , 最后中關(guān)閉這個文件 。 斷點續(xù)傳原理 其實斷點續(xù)傳的原理很簡單 , 就是在 HTTP 的請求上和一般的下載有所不同而已 。 GET / HTTP/ Accept: image/gif, image/xxbitmap, image/jpeg, image/pjpeg, application/, application/msword, application/, */* AcceptLanguage: zh AcceptEncoding: gzip, deflate UserAgent: Mozilla/ (patible。 Windows NT ) Connection: KeepAlive 服務(wù)器收到請求后 , 按要求尋找請求的文 件 , 提取文件的信息 , 然后返回給瀏覽器 , 返回信息如下 : 200 ContentLength=106786028 AcceptRanges=bytes Date=Mon, 30 Apr 2020 12:56:11 GMT 15 ETag=W/02ca57e173c11:95b ContentType=application/octetstream Server=MicrosoftIIS/ LastModified=Mon, 30 Apr 2020 12:56:11 GMT 所謂 斷點續(xù)傳 , 也就是要從文件已經(jīng)下載的地方開始繼續(xù)下載 。 下面是傳遞請求信息給 Web 服務(wù)器 的例子 , 要求從 2020200 字節(jié)開始 。 q=.2, */*。 服務(wù)器收到這個請求以后 , 返回的信息如下 : 206 ContentLength=106786028 ContentRange=bytes 2020200106786027/106786028 Date=Mon, 30 Apr 2020 12:55:20 GMT ETag=W/02ca57e173c11:95b ContentType=application/octetstream Server=MicrosoftIIS/ LastModified=Mon, 30 Apr 2020 12:55:20 GMT 和前面服務(wù)器返回的信息比較一下 , 就會發(fā)現(xiàn)增加了一行 : ContentRange=bytes 2020200106786027/106786028 返回的代碼也改為 206 了 , 而不再是 200 了 。 序列化 : 就是把類的對象當時的狀態(tài)持久化到在文件上。然后 JVM 會調(diào)用 writeObject 方法,將對象中的屬性一個一個 16 的進行序列化,我們可以在這個方法中控制哪些屬性需要序列化。當反序列化的時候, JVM 首先會調(diào)用readObject 方法,將我們剛剛在 writeObject 方法中序列化好的屬性,解析回來。 優(yōu)點: 使用 序列化可以象存儲文本或者數(shù)據(jù)一樣存儲對 象。用對象序列化就可以解決這個問題,因為它可以將對象的全部內(nèi)容保存于磁盤文件,這樣對象的執(zhí)行狀態(tài)也就被存儲了,到需要時還可以將其從文件中按原樣再讀取出來,這樣就解決了數(shù)據(jù)的丟失的問題。 要恢復的話則用輸入流 ,將對象從文件中恢復到使用處。 Java 的數(shù)據(jù)類型與機器無關(guān) 。 它提供了安全管理器 , 防止程序的非法訪問 。 4. 分布式 Java 建立在 TCP/IP 網(wǎng)絡(luò)平臺上 , 提供了用 HTTP 和 FTP 協(xié)議傳送和接收信息的庫函數(shù) , 使用其相關(guān)技術(shù)可以十分方便的構(gòu)建分布式應用系統(tǒng) 。 Java 取消了 C語言的結(jié)構(gòu)、指針、 define 語句、多重繼承、 goto 語句、操作符、重載等不易被掌握的特性 , 提供垃圾收集器自動回收不用的內(nèi)存空間 。 ? 包 : Java 語言的標準輸入 /輸出類庫 , 如基本輸入 /輸出流、文件輸入 /輸出、過濾輸入 /輸出流等等 。 在這個包中 , Java 提供了一些實用的方法和數(shù)據(jù)結(jié)構(gòu) 。 包含如處理時間的 date 類 , 處理變成數(shù)組的 Vector 類 , 以及 stack和 HashTable 類 。 ? 包 : 處理和操縱來自于網(wǎng)上的圖片的 Java 工具類庫 。 ? 包 : 構(gòu)建圖形用戶界面 (GUI)的類庫 , 低級繪圖操作 Graphics 類 , 圖形界面組件和布局管理如 Checkbox 類、 Container 類、 LayoutManger 接口等 ,以及界面用戶交互控制和事件響應 , 如 Event 類 。 開發(fā)平臺 的選擇 考慮到本系統(tǒng)的性能要求和現(xiàn)有的條件 , 本文 選擇了 Windows XP 中文版作為開發(fā)、測試和運行的平臺 。 它以全新的圖形界面 , 簡單快捷的操作方式 , 支持多媒體功能等特點而成為軟件發(fā)展的流行趨勢 。 18 軟件選擇 開發(fā) 多線程 的 語言 甚多 , 目前世界上流行的主流開發(fā) 語言 有 : JAVA, C++, C, .NET 等 。 關(guān)于 Eclipse Eclipse[1] 是一個開放源代碼的、基于 Java 的可擴展開發(fā)平臺 。 幸運的是 , Eclipse 附帶了一個標準的插件集 , 包括 Java 開發(fā)工具( Java Development Tools, JDT) 。 Eclipse 還包括插件開發(fā)環(huán)境( Plugin Development Environment, PDE) ,這個組件主要針對希望擴展 Eclipse 的軟件開發(fā)人員 , 因為它允許他們構(gòu)建與 Eclipse 環(huán)境無縫集成的工具 。 這種平等和一致性并不僅限于 Java 開發(fā)工具 。 Eclipse 框架還可用來作為與軟件開發(fā)無關(guān)的其他應用程序類型的基礎(chǔ) , 比如內(nèi)容管理系統(tǒng) 。 就其本身而言 , 它只是一個框架和一組服務(wù) , 用于通過插件組件構(gòu)建開發(fā)環(huán)境 。 人們甚至希望只輕松點擊鼠標就可以得到自己想要的東西 。 也可以看出人們在上網(wǎng)時再也不單是打開瀏覽器來瀏覽網(wǎng)頁 , 越來越多的人們開始使用下載軟件來獲取資源 。 由于用戶下載需求的增大 , 也要求下載軟件能夠迅速完成對資源的下載 。 最恰當?shù)谋扔骶褪怯脩魰械?CPU 似乎同時出現(xiàn)在兩個地方 , 在下載軟件中應用多線程技術(shù)可以理解為將一個下載任務(wù)分 成若干份來完成 , 其中的并發(fā)控制將使下載的效率大大提高 。 那么在很長的這段時間中很有可能會出現(xiàn)很多的意外情況使下載中斷或是停止 , 比如電源意外被切斷、網(wǎng)絡(luò)中斷、或是操作系統(tǒng)故障導致系統(tǒng)重新啟動 。 斷點續(xù)傳就是用來解決這樣的問題的 , 它的任務(wù)是在下載任務(wù)停止時 , 記錄當前下載的信息并且利用網(wǎng)絡(luò)協(xié)議中的一些重定向機制繼續(xù)完成下載任務(wù)而不必從頭再來 。 在下載任務(wù)的管理這一塊 , 用戶不僅希望下載工具具有下載一個一個資源的功能 ,而且具有批量下載有些相似的或有關(guān)聯(lián)的資源的功能 。 為了對下載任務(wù)進行掌控 , 用戶往往具有設(shè)置下載任務(wù)的線程數(shù) , 文件下載網(wǎng)址 ,文件下載存儲目錄和在下載過程中對下載任務(wù)的狀態(tài)進 行監(jiān)控等功能需求 。 20 業(yè)務(wù)流分析 多線程斷點續(xù)傳的業(yè)務(wù)流程 : 首先由用戶進入軟件系統(tǒng) , 在新建任務(wù)中填寫必要的下載資源的相關(guān)屬性 , 比如相關(guān)資源下載地址 URL、存儲路徑等 。 確認無誤就可以啟動線程開始下載資源 。 此外 , 系統(tǒng)為用戶提供了一些對任務(wù)的基本操作 , 比如 , 停止 、繼續(xù)、刪除等 。 Server 發(fā)送HTTP 或FTP 請求 響應請求返回文件地址 建立連接開始下載任務(wù) 下載結(jié)束 停止; 繼續(xù); 刪除。%JAVA_HOME%\lib\。%SystemRoot%\system32。%SystemRoot%\System32\Wbem ( 2)安裝 ,配置 Eclipse 執(zhí)行 Eclipse 安裝程序 , 按默認設(shè)置進行安裝 , 也可自定義路徑 , 但需修改下面的配置 選擇 WindowPreferencesJavaCompiler 把 Compiler pliance level 項選擇為 在 Java 選項中選擇 Installed JREs,將 勾上 。 22 第 四 章 系統(tǒng) 設(shè)計 系統(tǒng) 的 設(shè)計 要點 隨著用戶下載需求的增大 , 用戶下載的資源越來越大 , 下載的過程也就越來越久 ,這就要求下載軟件能夠迅速完成對資源的下載 , 為了提高下載效率的問題 , 所以本系統(tǒng)采用多線程的方式來實現(xiàn)下載速率的提高 。為了避免這些現(xiàn)象的產(chǎn)生 , 線程在使用共享資源或?qū)ο笄氨仨毇@得一個約束訪問同步對象的權(quán)力 , 也就是通過同步的機制來控制這種權(quán)力的使用 , 這就是線程的安全問題 。 長期以來 , “ 斷點續(xù)傳 ” 始終是困擾 使用者們 的一大難題 , 眼看著已經(jīng)下載到 99%的軟件 , 卻由于突然掉線而前功盡棄的那種沮喪恐怕人人都經(jīng)歷過 , 于是本系統(tǒng)采用斷點續(xù)傳的方式來設(shè)計 。 系統(tǒng)總體功能結(jié)構(gòu) 通過對多線程斷點續(xù)傳下載軟件的需求分析并結(jié)合實際情況的分析 , 本系統(tǒng)由下載分類管理、任務(wù)管理、設(shè)置管理、系統(tǒng)幫助四個主模塊構(gòu)成 。 下載任務(wù)的管理模塊主要有 六 個子模塊組成 : 新建下載任務(wù)模塊、 暫停 下載任務(wù)模塊、 開始 下載任務(wù)模塊、 刪除任務(wù)模塊 、打開文件目錄、打開文件 。 在系統(tǒng)幫助模塊里主要是包含一些對整個系統(tǒng)的說明 , 便于用戶理解 。 另外系統(tǒng)還支持 同步顯示文件下載進度及下載信息提示 。 為 的工具類 , 獲取 獲取 有效 URL 資源信息 及建立 Http 連接 ; 下載文件信息的實體類 ; 單線程下載 ; 調(diào)度線程 , 實現(xiàn)多線程下載 ; 實現(xiàn)事件監(jiān)聽 。 下載文件屬性面板 ; 添加下載任務(wù)對話框 ; 按鈕工具條 ; 文件主窗口 。 界面實現(xiàn) 主要通過調(diào)用 .*及 .*中的提供的標準件元素及事件監(jiān)聽機制來完成 。 (())。 (new Dimension(200,360) ) 。 (new Dimension(400,360) ) 。 (new BorderLayout())。 (itp_fileProperity,)。 //創(chuàng)建 toolbar面板 toolpane=new ToolPane()。 ().add(top_pane,)。 //設(shè)置 Frame顯示屬性 (600,400)。 (true)。 } 初始化面板布局 private void ini(){ JLabel lab_Lfilename=new JLabel(文件名稱 : )。 JLabel lab_Lfileprogress=new JLabel(下載進度 : )。 JLabel lab_Lthreadnum=new JLabel(線程數(shù)目 : )。 JLabel lab_Lurl=new JLabel(數(shù)據(jù)來源 : )。 lab_filename=new JLabel(未知文件 )。 } 設(shè)置新建對話框界面 private void setGUI() { topPan=new Top_pane()。 (new BorderLayout())。 ().add(botPan,)。 (400,350)。 public AddTaskListener(MainFrame f) { = f。 // 創(chuàng)建下載任務(wù) if (()) { addTask(taskInfo)。 (0)。 (
點擊復制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1