[JAVA
服务器 ] 用
Java
实现
Web
服务器
超文本传输协议()是位于 协议的应用层,是最广为人知的协
议,也是互连网中最核心的协议之一,同样,也是基于 或 模
型实现的。事实上,我们使用的浏览器如 或 是实现 协议
中的客户端,而一些常用的 服务器软件如 、和
等是实现 协议中的服务器端。页由服务端资源定
位,传输到浏览器,经过浏览器的解释后,被客户所看到。
的工作基于客户机服务器计算模型,由 浏览器客户机和
服务器服务器构成,两者之间采用超文本传送协议()进行通
信。 协议是 浏览器和 服务器之间的应用层协议,是通用
的、无状态的、面向对象的协议。
一个完整的 协议会话过程包括四个步骤:
◆ 连接, 浏览器与 服务器建立连接,打开一个称为
(套接字)的虚拟文件,此文件的建立标志着连接建立成功;
◆ 请求, 浏览器通过 向 服务器提交请求。 的请
求一般是 或 命令( 用于 ! "# 参数的传递);
◆ 应答, 浏览器提交请求后,通过 协议传送给 服务
器。 服务器接到后,进行事务处理,处理结果又通过 传回给
浏览器,从而在 浏览器上显示出所请求的页面;
◆ 关闭连接,应答结束后 浏览器与 服务器必须断开,以保证
其它 浏览器能够与 服务器建立连接。
Java 实现 Web 服务器功能的程序设计
编程思路
根据上述 协议的会话过程,本实例中实现了 请求的 服
务器程序的方法$方法如下:
通过创建 类对象,侦听用户指定的端口为 %&%&,等待
并接受客户机请求到端口。创建与 相关联的输入流和输出流,然后读
取客户机的请求信息。若请求类型是 ,则从请求信息中获取所访问的
#'文件名;如果 #'文件存在,则打开 #'文件,把 头信息
和 #'文件内容通过 传回给 浏览器,然后关闭文件,否则发
送错误信息给 浏览器。最后关闭与相应 浏览器连接的 。
用 ( 编写 服务器 )* 文件的源代码如下: