发布一篇用Java计划下载软件
你精通任何一门语言就最强大。现在来看,java的市场比C#大,C#容易入手,比较简单,java比较难“收集蚂蚁”、Falshget等很多多线程下载软件都是网友的必备工具,使用这些工具能够疾速从服务器高低载对照年夜的文件,这些工具的事情特征是把服务器真个文件分红几个段,每一个段分离、同时举行下载。编写这类程序,第1、必需对HTTP协定有较为充实的懂得;第2、无效利用多线程编程手腕在软件上完成。
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情形下的一些分外的数据构成。哀求行的格局是:
哀求办法 URI HTTP/版本号
GET命令是扫瞄器经常使用的文档哀求办法,在程序两头利用
GET URI HTTP/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行方送一个空缺行,标明哀求行停止。
<p>
没有那个大公司会傻了吧唧用.net网页编程开发大型项目,开发了,那等于自己一半的生命线被微软握着呢。而.net网页编程不行,限制在window系统,又是捆绑,鄙视微软之! 让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。 还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。 是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言 我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。 多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 Java 编程语言的风格十分接近C、C++语言。 Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。 是一种突破用户端机器环境和CPU J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。 是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言 所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
页:
[1]