理论教育 Java网络套接字Socket教程

Java网络套接字Socket教程

时间:2023-11-21 理论教育 版权反馈
【摘要】:在Client/Server模式下,按照套接字在网络中所起的作用不同,可以将它们分为两类:客户端套接字Socket和服务器端套接字ServerSocket。图12.3Client/Server模式的原理在Client/Server模式的网络应用中,客户机端Socket用于向服务器发出连接请求和交换数据。该工作过程包含以下4步:创建Socket对象。打开连接到Socket对象的输入/输出流。按照一定的协议对Socket对象进行读/写操作。

Java网络套接字Socket教程

在Java网络编程中,套接字是一个用于端点连接和数据交换的对象,一个套接字由IP地址和端口号唯一确定。网络的每一个端点都可以通过和连接绑定的套接字对象来交换数据。在Client/Server模式下,按照套接字在网络中所起的作用不同,可以将它们分为两类:客户端套接字Socket和服务器端套接字ServerSocket。

1.服务器端ServerSocket

服务器端的套接字ServerSocket始终在监听是否有连接请求,如果发现客户机端Socket向服务器发出连接请求,且服务器接受服务请求,则服务器端ServerSocket向客户机端Socket发回“接受”的消息。这样,两个Socket对象之间的连接就建立了。

2.客户机端Socket

客户机端Socket建立一个和服务器的连接,这需要客户机端知道服务器的主机名和提供服务的端口号。有了这些消息,当客户机端发出的建立连接的请求被服务器端接受时,客户机上就会创建一个Socket对象,利用这个Socket对象客户机就可以和服务器进行通信了。

Client/Server模式的原理如图12.3所示。

图12.3 Client/Server模式的原理(www.daowen.com)

在Client/Server模式的网络应用中,客户机端Socket用于向服务器发出连接请求和交换数据。服务器端的Socket始终在监听是否有连接请求,如果发现客户机端Socket向服务器发出连接请求,且服务器接受服务请求,则服务器端Socket向客户机端Socket发回“接受”的消息。此时,一个连接就建立起来了。然后,服务器端Socket和客户机端Socket就通过这个连接进行数据的传送。该工作过程包含以下4步:

(1)创建Socket对象。

(2)打开连接到Socket对象的输入/输出流。

(3)按照一定的协议对Socket对象进行读/写操作。

(4)关闭Socket对象(即关闭Socket对象绑定的连接)。

此外,在调用Socket类和ServerSocket类的某些方法时,可能出现某些异常(例如,网络没有联通,指定的IP地址不可到达,指定的端口号中没有服务进程等;再如,在服务器还没有启动的情况下,客户端请求服务器处理信息)。所以,在编写程序时要考虑到并及时处理这些异常。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈