第一节 第二节 第三节 第四节 第五节 第六节 第七节
第二节    套接字
网络上的两个程序通过一个双向的通信连接实现数据的交换,这个双向链路的一端称为一个Socket。Socket通常
用来实现客户方和服务方的连接。Socket是TCP/IP协议的一个十分流行的编程界面,一个Socket由一个IP地址和一
个端口号唯一确定。Socket通常用来实现C/S结构。
在Java应用程序中将Socket类和ServerSocket类分别用于客户端和服务器端,在任意两台机器之间建立连接。
java.net包中提供的Socket类实现了客户端的通信功能、ServerSocket类实现了服务器端的通信功能。当客户端和服
务器端连通后,它们之间就建立了一种双向通信模式。
在使用套接字通信过程中主动发起通信的一方被称为客户端,接受请求进行通信的一方称为服务器。通过套接字
建立连接的过程分为以下3个步骤:
(1)服务器建立ServerSocket对象,负责接收客户端请求。
(2)客户端创建一个Socket对象,包括连接的主机号和端口号,指定使用的通信协议,通过发出通信请求,与服务
器试图建立连接。
(3)服务器接收到客户端请求,创建一个Socket接受连接对象,与客户机进行通信。
在Java网络编程中,通过创建套接字可以建立与其他机器的连接,并创建套接字InputStream和OutputStream流对
象,套接字输入、输出流完全可以连接作为一个I/O流对象来对待。
在使用套接字编写客户机/服务器应用程序时,建立客户机和服务器两端相互通信的过程是一样的,该过程的主要
工作可归纳为以下4个方面:
打开套接字。
打开到套接字的输入、输出流。
根据服务器协议读写数据。
通信结束前的清理工作。