Socket编程(套接字编程)
在TCP通信协议下,能实现两台计算机之间的数据交互,并且它们要严格区分客户端(Client)与服务端
(Server)
客户端和服务端通信的步骤:
- 服务端先进行启动,并占用一个指定的端口号,等待客户端的连接
- 客户端主动发起服务端的连接,在连接成功之后,就可以进行数据发送了
注意,在整个过程中,服务端不能主动连接客户端,必须由客户端先行发起连接才行
在java中,对于这样基于TCP协议下连接通信的客户端和服务端,分别进行了抽象:
java.net.Socket
类表示客户端java.net.ServerSocket
类表示服务端
客户端
public static void main(String[] args) throws UnknownHostException, IOException {
// 创建客户端 连接 服务器的ip 和 端口
Socket socket = new Socket("127.0.0.1",8888);
// 得到网络字节的输出流 主要用来输出数据到服务器
OutputStream os