欢迎访问宙启技术站
智能推送

Java函数实现网络编程中的TCPSocket通信的例子?

发布时间:2023-06-15 00:10:44

在Java编程中,实现网络编程中的TCPSocket通信需要使用Java中的Socket类和ServerSocket类,这两个类可以让Java程序实现对TCP协议的socket通信。接下来,我将通过一个简单的例子来演示如何实现网络编程中的TCPSocket通信。

首先,我们需要创建一个服务器端程序,以便接收来自客户端的Socket请求。以下是服务器端程序的代码:

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;

public class TCPServer {
    public static void main(String[] args) throws IOException {
        ServerSocket serverSocket = new ServerSocket(8888);
        System.out.println("服务器已启动,等待客户端连接...");

        Socket socket = serverSocket.accept();
        System.out.println("客户端已连接");

        InputStream inputStream = socket.getInputStream();
        byte[] buffer = new byte[1024];
        int len;
        len = inputStream.read(buffer);
        String message = new String(buffer, 0, len);
        System.out.println("收到客户端消息:" + message);

        OutputStream outputStream = socket.getOutputStream();
        outputStream.write("你好,客户端".getBytes());

        inputStream.close();
        outputStream.close();
        socket.close();
        serverSocket.close();
    }
}

在这段代码中,我们创建了一个ServerSocket对象,并指定了监听的端口号。然后,我们通过调用accept()方法来等待客户端的连接请求。当客户端与服务器建立连接后,我们使用InputStream对象来接收客户端发送过来的消息,并使用OutputStream对象将消息发送回客户端。

下面我们来看看客户端程序的代码:

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;

public class TCPClient {
    public static void main(String[] args) throws IOException {
        Socket socket = new Socket("127.0.0.1", 8888);

        OutputStream outputStream = socket.getOutputStream();
        outputStream.write("你好,服务器".getBytes());

        InputStream inputStream = socket.getInputStream();
        byte[] buffer = new byte[1024];
        int len;
        len = inputStream.read(buffer);
        String message = new String(buffer, 0, len);
        System.out.println("收到服务器消息:" + message);

        outputStream.close();
        inputStream.close();
        socket.close();
    }
}

在客户端程序中,我们创建了一个Socket对象,并指定要连接的IP地址和端口号。通过OutputStream对象,我们可以向服务器发送消息。然后,我们使用InputStream对象来接收服务器发送过来的消息,并将其打印到控制台上。

通过上述例子,我们可以了解到实现TCP协议的Socket通信需要使用Socket类和ServerSocket类。我们可以利用这两个类来创建一个服务器端和一个客户端,使它们可以相互通信,达到网络通信的目的。