溫馨提示×

怎樣用Java Socket創(chuàng)建服務(wù)器端

小樊
81
2024-10-16 18:17:16
欄目: 云計(jì)算

要用Java Socket創(chuàng)建一個服務(wù)器端,你需要遵循以下步驟:

  1. 導(dǎo)入所需的庫
import java.io.*;
import java.net.*;
  1. 創(chuàng)建一個ServerSocket對象,指定要監(jiān)聽的端口號
int port = 12345;
ServerSocket serverSocket = new ServerSocket(port);
  1. 在循環(huán)中等待客戶端連接
while (true) {
    // 接受客戶端連接
    Socket clientSocket = serverSocket.accept();

    // 處理客戶端請求
    handleClient(clientSocket);
}
  1. 創(chuàng)建一個處理客戶端請求的方法
private void handleClient(Socket clientSocket) {
    try {
        // 獲取輸入輸出流
        InputStream inputStream = clientSocket.getInputStream();
        OutputStream outputStream = clientSocket.getOutputStream();

        // 讀取客戶端發(fā)送的數(shù)據(jù)
        BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
        String message = reader.readLine();

        // 處理數(shù)據(jù)(這里只是簡單地將收到的消息打印到控制臺)
        System.out.println("Received from client: " + message);

        // 向客戶端發(fā)送響應(yīng)
        String response = "Hello from server!";
        outputStream.write(response.getBytes());
        outputStream.flush();

        // 關(guān)閉資源
        reader.close();
        outputStream.close();
        clientSocket.close();
    } catch (IOException e) {
        System.out.println("Error handling client: " + e.getMessage());
    }
}
  1. 在主方法中啟動服務(wù)器
public static void main(String[] args) {
    int port = 12345;
    ServerSocket serverSocket = new ServerSocket(port);

    System.out.println("Server started on port " + port);

    while (true) {
        // 接受客戶端連接
        Socket clientSocket = serverSocket.accept();

        // 處理客戶端請求
        handleClient(clientSocket);
    }
}

將以上代碼保存到一個名為Server.java的文件中,然后使用以下命令編譯和運(yùn)行:

javac Server.java
java Server

現(xiàn)在,你的服務(wù)器已經(jīng)啟動并監(jiān)聽12345端口。當(dāng)客戶端連接到該端口并發(fā)送消息時,服務(wù)器將讀取消息并將其打印到控制臺,然后向客戶端發(fā)送響應(yīng)。

0