网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.轻松玩转Java配置的Classpath.
.JavaMail常见问题之POP3问题.
.java在Linux下的web应用(三).
.J2ME与Web Service-KSOAP快速上手.
.组织SWT/JFace控件的利器:Layout.
.java性能优化-之一.
.Microsoft Visual Studio .NET 系.
.ITS-CMS 2.0 URL设计构想.
.怎样用Java实现MSN Messager的功.
.关于继承内部类——java编程思想.
.开发 Web 应用程序的快捷途径介绍.
.Java 5.0和.NET 2.0 在较量中携手.
.累积开发.
.针对Java移动设备的3D图形第1部分.
.审查Java 代码的十一种常见错误.
.try catch finally与return的执行.
.关于executeBatch()的测试.
.Maven vs Ant.
.保持 EJB 技术的所有优点而不增加.
.改进对象管理方式 提高程序性能.

Java 高层网络编程

发表日期:2008-1-5



  Java.net 包中的类和接口提供了可用于低层和高层网络编程的 API。低层 API 可以让你直接访问网络协议,但是为此你不得不使用低层的 TCP 套接字和 UDP 数据包。高层的 API (如 URL, URLConnection 和 httpURLConnection 等类) 可以使你更快的开发网络应用,却不需要写很多代码。另一篇文章,《Network Programming with J2SE 1.4》会告诉你如何使用低层的套接字进行网络编程。这篇文章的重点则放在如何使用 java.net 包中的高层 API 开发基于 HTTP 的应用程序。
  
  这篇文章将有如下内容:
  
  · 概览 HTTP
  
  · 概览 java.net 包的高层 API
  
  · 示例说明如何使用高层 API
  
  · 制作一个可以下载股票行情的应用程序
  
  · 演示如何提交数据到网页服务器
  
  · 概览 HTTP 的验证并展示如何保护你的网络资源
  
  · 提供代码实例演示如何执行 HTTP 的验证
  
  概览 HTTP
  
  超文本传输协议 (Hypertext Transfer Protocol, HTTP) 是一个“请求-回应”的应用协议。这个协议支持一套固定的方法如 GET、POST、PUT、DELETE 等。一般用 GET 方法向服务器请求资源。这里有两个 GET 请求的例子:
  
  GET / HTTP/1.1
  
  GET /names.Html HTTP/1.1
  
  另外,你可以使用 GET 和 POST 方法向服务器发送数据,它们向服务器发送数据的方式是不同的:
  
  · GET 方法:输入的数据将作为 URL 的一部分发送
  
  · POST 方法:输入数据作为一个独立的实体发送
  
  考虑一下下面的 HTML 表单:
   Java 高层网络编程
  这个表单会提交到 http://www.javacourses.com/servlet/getMarks 由 Servlet 处理。该表单使用了 GET 方法来传输信息。假如用户输入一个学号——比如 556677——并点击 GetMarks 按钮,表单数据就会作为 URL 的一部分传送到 Servlet 中。经过编码之后的 URL 就是:http://www.javacourses.com/servlets/getMarks?number=556677。
  
  在使用 POST 方法的情况下,传输数据时不会将数据作为 URL 的一部分;它们会作为一个独立的实体来传输。因此,POST 方法更安全,你也可以用这个方法传输更多的数据。而且用 POST 传输的数据不一定要是文本,用 GET 方法传输的却一定要是文本。
  
  消息息格式
  
  请求消息指定了方法名称 (GET 或者 POST)、URL、协议版本号、头部消息和可选消息。头部消息也许会包含请求信息和客户端信息,如接受的内容类型、浏览器名称以及验证数据。返回消息指定了协议版本、响应代码和原因。不管执行是否成功,响应代码和原因都会报告。一些响应代码如下:
  
  200 OK: Request sUCceeded. The requested resource can be found later in this message.
  
  301 Moved Permanently: Requested resource has moved. New location is specified later in this message.
  
  400 Bad Request: Request message is not understood by the server.
  
  404 Not Found: Requested document is not found on this server.
  
  关于 HTTP 和所有返回代码的信息可以在 HTTP 1.1 规范 RFC2616 中找到。
  
  下面是一个请求消息由浏览器到服务器的例子。这里请求的 URL 是 http://java.sun.com:
  
  GET / HTTP/1.1
  
  Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg,
  
  application/vnd.ms-Powerpoint, application/vnd.ms-Excel,
  
  application/msWord, */*
  
  Accept-Language: en-ca
  
  Accept-Encoding: gzip, deflate
  
  User-Agent: Mozilla/4.0 (compatible; MSIE 5.01; Windows 98; YComp 5.0.0.0)
  
  Host: java.sun.com
  
  Connection: Keep-Alive
  
  Cookie: SUN_ID=24.80.19.177:28346100732290;
  
  SunONEUserId=24.80.19.177:86521021960770
  
  然后这里是服务器对这个请求的回复消息:
  
  HTTP/1.1 200 OK
  
  Server: Netscape-Enterprise/6.0
  
  Date: Mon, 14 Oct 2002 15:18:04 GMT
  
  Content-type: text/html
  
  Connection: close
  
  概览 java.net 包的高层 API
  
  java.net 包中含有高层 API。
上一篇:Java何以保网络安全 人气:818
下一篇:谨防Java网络编程“陷阱” 人气:558
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐