admin 管理员组

文章数量: 1086019


2024年3月30日发(作者:html网页怎么添加图片)

Java ServerSocket TCP 实例

本文将介绍如何使用 Java 的 ServerSocket 类来创建一个基于 TCP 协议的服务

器,并提供一个实例代码来演示其用法。

什么是 TCP/IP 协议

TCP/IP(Transmission Control Protocol/Internet Protocol)是互联网上常用

的一种网络协议。TCP 是一种面向连接的、可靠的传输协议,它通过三次握手建立

连接,并使用序列号和确认应答机制来保证数据传输的可靠性。IP 是一种网络层

协议,负责将数据包从源地址传输到目标地址。

什么是 ServerSocket 类

ServerSocket 类是 Java 中用于创建服务器端套接字的类。它提供了一些方法来

监听指定端口上的连接请求,并能够接受客户端发起的连接。一旦建立了连接,就

可以通过返回的 Socket 对象与客户端进行通信。

创建一个简单的 TCP 服务器

下面是一个简单的示例代码,展示了如何使用 ServerSocket 类创建一个基于 TCP

协议的服务器:

import ption;

import tream;

import Socket;

import ;

public class TCPServer {

public static void main(String[] args) {

try {

// 创建 ServerSocket 对象并指定监听端口

ServerSocket serverSocket = new ServerSocket(8888);

// 监听客户端连接请求

n("Server is running and waiting for client conne

");

Socket clientSocket = ();

n("Client connected: " + tAddr

ess().getHostAddress());

// 获取输入流

InputStream inputStream = utStream();

// 读取客户端发送的数据

byte[] buffer = new byte[1024];

int bytesRead;

while ((bytesRead = (buffer)) != -1) {

String message = new String(buffer, 0, bytesRead);

n("Received message from client: " + message);

}

// 关闭连接

();

();

();

} catch (IOException e) {

tackTrace();

}

}

}

在上述示例中,我们首先创建一个 ServerSocket 对象并指定监听的端口号为

8888。然后通过调用 accept() 方法来监听客户端的连接请求,并返回一个

Socket 对象用于与客户端通信。

接下来,我们获取与客户端建立连接后的输入流,并通过循环读取客户端发送的数

据。最后,关闭输入流、客户端套接字和服务器套接字。

运行 TCP 服务器

要运行上述示例代码,可以按照以下步骤进行操作:

1.

2.

3.

4.

打开命令行终端。

编译源代码文件:

javac

运行生成的字节码文件:

java TCPServer

在另一个终端中使用 telnet 命令模拟一个 TCP 客户端并连接到服务器:

telnet localhost 8888

5. 在 telnet 终端中输入一些文本并按回车键,你将在服务器终端中看到接收

到的消息。

结论

通过使用 Java 的 ServerSocket 类,我们可以轻松地创建一个基于 TCP 协议的

服务器,并与客户端进行通信。上述示例代码只是一个简单的演示,你可以根据自

己的需求进行扩展和修改。

希望本文能够帮助你理解如何使用 ServerSocket 类创建 TCP 服务器,并为你的

网络编程提供一些指导。Happy coding!


本文标签: 客户端 连接 使用