关于Socket编程的这些你必须掌握!
Socket编程
什么是套接字?
套接字是使用TCP提供通信机制在两台计算机之间进行通信。客户端程序在通信的末尾创建一个套接字,并尝试将套接字连接到服务器。建立连接后,服务器会在通信结束时创建一个套接字对象。客户端和服务器现在可以通过写入和读取套接字进行通信。
1.服务器端-java.net.ServerSocket 基站类
为服务器提供了一种监听客户端并与其建立连接的一种机制。
核心方法:
public ServerSocket(int port):在本机根据指定端口号创建服务器 public Socket accept():侦听并接收连接到本服务器的客户端连接
此方法会一直阻塞,直到有一个客户端成功连接,返回此连接。
2.客户端-java.net.Socket 客户端类
一个socket类就表示一个套接字。
核心方法:
public Socket(String host,int port): 根据指定ip和端口号创建套接字并连接到远程服务器 public InputSteam getInputStream():返回此套接字的输入流 public OutputStream getOutputStream():返回此套接字的输出流
3.使用Socket在两台计算机之间建立Tcp连接的步骤
1)服务器实例化一个ServerSocket对象,并指出要在哪个端口进行通信。 2)服务器端调用accept方法,此方法等待直到客户端连接到给定端口的服务器,之后客户端实例化一个Socket对象,指定要连接的服务器端口和名称。 3)Socket类的构造函数尝试将客户端连接到指定的服务器和端口号。如果建立了通信,则客户端现在具有能够与服务器通信的Socket对象。 4)在服务器端,accept()方法返回对连接到客户端套接字的服务器上的新套接字的引用。 5)建立连接之后,使用IO流进行通讯。
上一篇:
Java架构师技术进阶路线图