Java

Java里socket连接怎样建立

小樊
84
2024-09-30 01:30:19
栏目: 编程语言

在Java中,建立Socket连接主要包括两个步骤:服务器端创建ServerSocket对象并监听指定端口,客户端创建Socket对象并连接到服务器的IP地址和端口。以下是一个简单的示例:

服务器端代码:

import java.io.*;
import java.net.*;

public class Server {
    public static void main(String[] args) throws IOException {
        int port = 12345; // 服务器监听的端口号
        ServerSocket serverSocket = new ServerSocket(port); // 创建ServerSocket对象
        System.out.println("服务器已启动,正在监听端口:" + port);

        Socket socket = serverSocket.accept(); // 等待客户端连接
        System.out.println("客户端已连接:" + socket.getInetAddress());

        InputStream inputStream = socket.getInputStream(); // 获取客户端发送的数据流
        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
        String message;

        while ((message = bufferedReader.readLine()) != null) {
            System.out.println("收到客户端消息:" + message);
        }

        socket.close(); // 关闭Socket连接
        serverSocket.close(); // 关闭ServerSocket对象
    }
}

客户端代码:

import java.io.*;
import java.net.*;

public class Client {
    public static void main(String[] args) throws IOException {
        String serverAddress = "localhost"; // 服务器IP地址
        int port = 12345; // 服务器监听的端口号

        Socket socket = new Socket(serverAddress, port); // 创建Socket对象并连接到服务器
        System.out.println("已连接到服务器:" + serverAddress + ":" + port);

        OutputStream outputStream = socket.getOutputStream(); // 获取服务器发送的数据流
        PrintWriter printWriter = new PrintWriter(outputStream, true);

        String message = "你好,服务器!";
        printWriter.println(message); // 向服务器发送消息
        System.out.println("已发送消息:" + message);

        socket.close(); // 关闭Socket连接
    }
}

在这个示例中,服务器端创建了一个ServerSocket对象并监听12345端口。当客户端连接到服务器时,服务器会接收到客户端的消息并在控制台输出。客户端创建一个Socket对象并连接到服务器的IP地址和端口,然后向服务器发送一条消息。

0
看了该问题的人还看了