基于HTTP的多线程下载器毕业论文(37页).docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于HTTP的多线程下载器毕业论文(37页).docx》由会员分享,可在线阅读,更多相关《基于HTTP的多线程下载器毕业论文(37页).docx(36页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于HTTP的多线程下载器毕业论文-第 30 页X X 科 技 大 学毕 业 设 计( 论 文 )题目基于HTTP的多线程下载器作者 学院 专业 学号 指导教师 2012 年 6 月 6 日X X 科 技 大 学毕业设计(论文)任务书 计算机科学与工程 学院 网络工程 系(教研室)系(教研室)主任: (签名) 年 月 日学生姓名: 学号: 专业: 1 设计(论文)题目及专题: 基于HTTP的多线程下载器 2 学生设计(论文)时间:自 2012 年 1月 5 日开始至 2012 年 6 月 6 日止3 设计(论文)所用资源和参考资料: 1 李钟尉,马文强,陈丹丹.Java从入门到精通M.清华大
2、学出版社,2008年2 孙卫琴.Java面向对象编程(Java开发专家)M.电子工业出版社,2006年3 克里舍纳姆塞,范群波.Web协议与实践(HTTP1.1网络协议缓存技术和流量测量).科学教育出版社4 设计(论文)应完成的主要内容:设计并实现基于红彤彤批协议的多线程下载器,实现了断点续传、回收站、悬浮窗等基本功能。5 提交设计(论文)形式(设计说明与图纸或论文等)及要求:(1)论文思路清晰,条理清楚,中心突出,内容充实,论据充分,结构紧凑,层次分明,图表清晰,格式规范,结论正确;按湖南科技大学本科生毕业设计(论文)要求与规范编排、打印文稿;(2)上交论文(纸质)打印文稿和系统源码(电子版
3、);6 发题时间: 年 月 日指导教师: (签名)学 生: (签名)X X 科 技 大 学毕业设计(论文)指导人评语主要对学生毕业设计(论文)的工作态度,研究内容与方法,工作量,文献应用,创新性,实用性,科学性,文本(图纸)规范程度,存在的不足等进行综合评价指导人: (签名)年 月 日指导人评定成绩: X X 科 技 大 学毕业设计(论文)评阅人评语主要对学生毕业设计(论文)的文本格式、图纸规范程度,工作量,研究内容与方法,实用性与科学性,结论和存在的不足等进行综合评价评阅人: (签名)年 月 日评阅人评定成绩: X X 科 技 大 学毕业设计(论文)答辩记录日期: 学生: 学号: 班级: 题
4、目: 提交毕业设计(论文)答辩委员会下列材料:1 设计(论文)说明书共页2 设计(论文)图 纸共页3 指导人、评阅人评语共页毕业设计(论文)答辩委员会评语:主要对学生毕业设计(论文)的研究思路,设计(论文)质量,文本图纸规范程度和对设计(论文)的介绍,回答问题情况等进行综合评价答辩委员会主任: (签名)委员: (签名)(签名)(签名)(签名)答辩成绩: 总评成绩: 摘 要当今的互联网时代,下载器是人们进行正常上网必不可少的工具。现在主流的下载器有很多,如迅雷、电驴、qq旋风等等。毋庸置疑,这些下载器都用到了多线程。所谓线程就是程序流执行的最小单元。在下载器中,线程可以简单的理解为是一条下载通道
5、。那么,单线程就是用一条下载通道进行下载,而多线程就是同时用多条下载通道进行下载。当用户选择多线程进行下载,下载器就会将下载资源按线程数目进行分片,然后同时将这些片下载到本地。很显然多线程相对于单线程而言对CPU的利用率更高,这样更有利于提高下载的速度。HTTP即超文本传送协议,它是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。HTTP是一种常用的网络协议。用户如果想要上网,最基本的就是要遵循HTTP协议。此次毕业设计采用了JAVA程序开发语言和eclipse开发工具。本课题重点介绍了在HTTP网络环境下实现多线程以及下载过程中的断点续传的原理和
6、方法,有助于用户对下载器有更深层次的了解和更好的使用下载工具。关键词:HTTP;下载器;Java;多线程ABSTRACTIn todays internet times, the downloader is the necessary tools for people. Now there are a lot of mainstream downloaders, such as the thunder,EasyMule,qq whirlwind and so on. Undoubtedly, all of these downloaders used the Multi-thread. The
7、 so-called thread program is the smallest unit of execution flow. Thread can be simple to understand as a download channel. So, single thread is to download with a single download channel, and downloading with multi-thread is to download with a lot of download channel at the same time. When a user s
8、elects a multi-thread download, download device will download resources according to the number of threads . Then download resources to local place at the same time. Obviously Multi-thread take a higher CPU utilization than single thread, so it can improve download speed. HTTP namely hypertext trans
9、fer protocol, it is a kind of detailed communication regulations between the world wide web server and browser, it is a data transfer protocol which can through the Internet transmitting the world wide web document transmission. HTTP is a common network protocol. If you want to get to the Internet,
10、the most basic is to follow the HTTP protocol. I use java program development language and eclipse development tool in my graduation design. This subject mainly introduces the principle and method to realize the multi-thread download process and break point transmission under HTTP network environmen
11、t .It can help users to have a deeper understanding about downloader and how to use download tools better.Keywords: HTTP;downloader; Java; Multi-thread目录第一章 引言- 3 -1.1 项目背景- 3 -1.2 编写目的- 3 -1.3 论文的主要内容- 3 -第二章 应用开发相关技术和理论- 5 -2.1 HTTP- 5 -2.1.1 Http简介- 5 -2.1.2 Http请求和响应- 5 -2.2 JAVA- 7 -2.2.1 Java简
12、介- 7 -2.2.2 Swing简介- 7 -2.3 线程和多线程- 8 -2.3.1 线程的基本概念- 8 -2.3.2 多线程的优点- 9 -2.3.3 Java线程的实现- 9 -第三章 系统分析与设计- 10 -3.1 功能需求- 10 -3.2 系统功能模块的划分- 10 -3.3 系统流程图- 11 -3.4 系统结构用例图- 12 -4.1 开发环境构建- 13 -4.1.1 JDK和Eclipse的安装- 13 -4.2 MainFrame模块设计- 14 -4.2.1 MainFrame模块结构- 14 -4.2.2 主界面设计- 15 -4.2.3 MainFrame组件
13、监听事件- 17 -4.3 GlobalData模块设计- 18 -4.4 DownTableModel模块设计- 18 -4.4.1 模块UI设计- 18 -4.4.2 模块数据动态更新- 19 -4.5 NewDownload模块设计- 21 -4.5.1 模块流程分析- 21 -4.5.2 模块UI设计- 23 -4.5.3 NewDownload监听事件- 24 -4.6 Download模块的设计- 25 -4.6.1 模块流程分析- 26 -4.6.2 模块详细设计- 27 -4.7 DownloadThread模块的设计- 29 -4.8 LoadProperty模块设计- 30
14、 -4.8.1 模块流程分析- 30 -4.8.2 LoadProperty模块实现- 30 -4.9 悬浮窗模块设计- 32 -4.9.1 悬浮窗UI设计- 32 -4.9.2 悬浮窗主件监听事件- 33 -第五章 结论- 35 -参 考 文 献- 36 -致 谢37第一章 引言1.1 项目背景目前国内下载器有很多种,有基于Http下载的,也有基于P2P下载的(最典型的就是电驴)。HTTP 是 Hyper Text Transportation Protocol(超文本传输协议)的缩写,它是计算机之间交换数据的方式,原理非常简单,就是用某种规则(协议)和提供文件的服务器取得联系并将文件搬到自
15、己的计算机中来,从而实现下载的功能。HTTP下载模式是最经典的下载方式,也是发展得最成熟的技术,绝大部分的下载软件是从基于HTTP下载模式发展来的。HTTP下载模式依然是下载器中不可缺少的部分。对于多线程技术大家都不陌生,多线程技术在现阶段的下载器中得到了广泛的应用。由于在网络环境下,用户对于下载器速度的要求很高。当下载器采用多线程模式,实现在网络环境下对资源的同步下载,可以明显提高对CPU和带宽的利用率,最终实现下载速度的提高。本课题就是基于上述背景而开展的。1.2 编写目的如今是个互联网的时代,网络资源共享已经是潮流。我们如何获取这些共享的网络数据就要用到各种网络资源下载器。本文重点介绍了
16、基于Http协议的多线程下载器的原理以及实现,希望能帮助用户更好的了解下载器,从而让用户能够更好的、更合理的去使用下载器,方便用户快速的下载所需要的资源。 1.3 论文的主要内容下载器的使用在我国已经是非常普遍,下载技术也日趋成熟。下面我将介绍如何利用Java以及Java提供的用户界面开发工具包Swing来实现下载器的功能和界面。本论文具体章节安排如下:第一章,引言。主要介绍本课题的背景和意义。第二章,系统开发相关概念和理论。主要介绍本系统涉及的相关概念、技术。第三章,系统分析。本章主要对系统进行了需求分析,系统功能模块划分;同时还给出了系统流程图和用例图。第四章,系统实现。这章是全文的核心部
17、分,包括开发运行环境构建,系统各功能模块的实现等。第五章,结论,对本文聚焦的问题进行总结。第二章 应用开发相关技术和理论2.1 HTTP2.1.1 Http简介HTTP 是 Hyper Text Transportation Protocol(超文本传输协议)的缩写,是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议,位于应用层。该协议使用可靠的TCP连接,默认端口是80;2.1.2 Http请求和响应HTTP协议基于客户端/服务器模式,客户端主动发出HTTP请求,服务器接收HTTP请求,返回HTTP响应结果。简单的http请求响应过程如图2.1所示
18、:图2.1 http请求与响应请求报文是指客户端浏览器向网络服务器请求页面时,发送到服务器端的字符串,必须符合HTTP协议的格式要求,它可能包含如下组成部分:GET /index.html HTTP/1.1Accept: image/gif, image/x-xbitmap, image/jpeg, , */* /客户端可接受的文件类型Accept-Language: zh-cn UA-CPU: x86 /客户端处理器类型Accept-Encoding: gzip, deflate /表示客服端是否支持压缩格式传输User-Agent: Mozilla/4.0 (compatible; MSI
19、E 7.0; Windows NT 5.1)Host: :80Connection: Keep-Alive /表示客户端是否与主机持续连接 注意:请求报文中的大部分项目是可选的,只有GET和Host部分是必需的;GET部分的格式是: GET/请求的URLHTTP/协议版本号 如:GET /index.html HTTP/1.1Host部分的格式是:Host:服务器域名或IP地址:端口号 如:Host: :80换言之,请求报文中只要包含以上两部分,就可以向网络站点服务器请求到页面。响应报文是指网络服务器收到来自客户端的请求后,发回到客户端的字符串,它用来告诉客服端:服务器已经接受请求,随后跟随的
20、是被请求的网页内容;HTTP/1.1 200 OKDate: Sat, 11 Aug 2007 11:58:37 GMT /响应时间Server: Apache/1.3.37(Unix) /服务器类型Accept-Ranges: bytes /何种方式发送响应数据Content-Length: 11503Content-Type: text/html响应报文中也有两部分是必需的:HTTP/协议版本号状态码OK状态码是一个3位整数,用来表示不同的状态,200表示响应成功,如:HTTP/1.1 200 OKContent-Type:text/html;charset=字符集编码用来描述服务器发回响
21、应的文件类型以及字符集编码,text/html说明是文本文件或超文本文件,如:Content-Type: text/html; charset=GB2312附:响应状态码的具体描述: 1xx-信息提示 这些状态代码表示临时的响应。客户端在收到常规响应之前,应准备接收一个或多个 1xx 响应。 100-继续。 101-切换协议。 2xx-成功 这类状态代码表明服务器成功地接受了客户端请求。200-确定。客户端请求已成功。201-已创建。 202-已接受。203-非权威性信息。 204-无内容。 205-重置内容。206-部分内容。 3xx-重定向 客户端浏览器必须采取更多操作来实现请求。例如,浏
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 HTTP 多线程 下载 毕业论文 37
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内