1.TCP是一个面向连接的协议。
实现TCP程序,需要编写服务端和客户端,java API为我们提供了java.net包,为实现网络应用程序提供类。
ServerSocket,此类实现服务器套接字。
Socket, 此类实现客户端套接字(套接字)。
Socket是网络驱动层提供给应用程序编程的接口和一种机制。
2.数据接收过程:
3.实现服务器端与客户端程序:
1.服务器:
ServerSocket 此类实现服务器套接字。服务器套接字等待请求通过网络传入,它基于该请求执行某些操作,然后可能向请求者返回结果。
ServerSocket(int port) 创建绑定到特定端口的服务器套接字。
setSoTimeout(int timeout) 通过指定超时值启用/禁用SO_TIMEOUT(以毫秒为单位)
InetAddress getInetAddress() 返回此服务器套接字的本地地址
Socket accept() 倾听并接受到此套接字的连接
2.客户端:
Socket 此类实现客户端套接字(套接字)。套接字是两台机器间通信的端点。
Socket(String host, int port) 创建一个流套接字并将其连接到指定主机上的指定端口号
InputStream getInputStream() 返回此套接字的输入流
void setSoTimeout(int timeout) 启用/禁用带有超时值的SO_TIMEOUT(以毫秒为单位)
事例:
Echo,意为应答。程序的功能是客户端向服务器发送一个字符串,服务器不做任何处理,直接把字符串返回给客户端,Echo是最基本的客户端/服务器程序。
目的:测试网络互通