用户名: 密码: 免费注册 忘记密码? 网站地图 | 加入收藏 | 设为首页
首页 | 新闻 | 工具 | 系统 | 办公 | 聊天 | 多媒体 | 网页 | 运营 | 平面 | 欣赏 | 数据库 | 程序 | 服务器 | 组网
网页 | 3dmax | Ghost | Windows Xp| Dreamweaver | photoshop | Flash | office | Alexa | Css | QQ | Asp | PHP | Jsp | Access
Flash MX 2004入门 | 网站推广策略 | CorelDRAW入门 | ASP学习 | 网站建设大师功 | Word入门
  iTbulo.com > 学院 > 程序开发教程 > JAVA教程 > JAVA实例教程 > 文章正文
用Java设计下载软件
iTbulo.COM 2006-6-6 佚名()

本文介绍了如何使用Java编写下载软件并实现多现程下载

“网络蚂蚁”、Falshget等许多多线程下载软件都是网友的必备工具,利用这些工具可以快速从服务器上下载比较大的文件,这些工具的工作特性是把服务器端的文件分成几个段,每个段分别、同时进行下载。编写这类程序,第一、必须对HTTP协议有较为充分的了解;第二、有效使用多线程编程手段在软件上实现。

HTTP协议的简介

HTTP协议是一种超文本传输协议(HypertextTransferProtocol),工作于网络应用层,自1990年起广泛应用于WWW的全球信息服务,HTTP协议的详细说明可以在网上查阅RFC2518、RFC2616等文档。

HTTP协议老的标准是HTTP/1.0,目前最通用的标准是HTTP/1.1。HTTP/1.1是在HTTP/1.0基础上的升级,增加了一些功能,全面兼容HTTP/1.0。HTTP/1.0不支持文件断点续传,如果服务器使用HTTP/1.0,“网络蚂蚁”的任何多线程下载程序都只能按单线程下载;好在目前的Web服务器绝大多数都采用了HTTP/1.1,所以,下面将基于HTTP/1.1进行介绍。

HTTP协议的相关重要命令

基于HTTP的浏览器浏览网页、下载文件时,工作原理类似客户机/服务器模式:浏览器向Web服务器发出一个HTTP请求行;Web服务器在收到有效的请求后,返回一个状态行或多个响应标题、一个空白行和相关文档。根据这一工作原理,下载程序必须实现向服务器发送请求和获取服务器响应状态的功能。

1.向服务器发送GET请求命令

一个HTTP请求由一个请求行、可选数目的请求标题、一个空白行,以及在POST情况下的一些额外的数据组成。请求行的格式是:

请求方法URIHTTP/版本号

GET命令是浏览器常用的文档请求方法,在程序中间使用

GETURIHTTP/1.1

向Web服务器发送请求行(行号3),Java代码如下:

....

clientSocket=newSocket(host,port);//打开要下载文件服务器的Socket

outStream=newPrintStream(clientSocket.getOutputStream());

....

outStream.println(“GET”+uri+“HTTP/1.1”);

outStream.println(“Host:”+host);

outStream.println(“Accept:*/*”);

outStream.println(“Referer:”);

outStream.println();

....

注:第4行给出URL中的主机名和端口号,第5行说明客户端接收所有MIME类型,第7行方送一个空白行,表明请求行结束。

[1] [2] [3] 下一页

文章搜索
相关资讯
相关文章 相关下载
关于Servlet、Jsp中的多国语言显示
触摸Java编程中的“文档”和“包”
用Java实现FTP服务器
java文件操作大全
避免Java EE项目评估中的常见错误
焦点信息