Java Socket编程:使用Socket实现客户端服务器通信
{ "title": "Java Socket编程:使用Socket实现客户端服务器通信", "description": "本文介绍了使用Java的Socket类实现客户端和服务器之间通信的示例代码。通过Socket建立连接,并使用输入输出流进行数据传输。示例代码包含服务器端和客户端两部分,分别演示了如何建立连接、接收和发送数据等操作。", "keywords": "Java, Socket, 客户端, 服务器, 通信, 网络编程", "content": ""import java.io.BufferedReader;\nimport java.io.IOException;\nimport java.io.InputStreamReader;\nimport java.io.PrintWriter;\nimport java.net.ServerSocket;\nimport java.net.Socket;\n\npublic class Server {\n public static void main(String[] args) {\n try {\n // 创建ServerSocket对象,指定端口号\n ServerSocket serverSocket = new ServerSocket(8888);\n \n System.out.println("服务器已启动,等待客户端连接...");\n \n // 等待客户端连接\n Socket clientSocket = serverSocket.accept();\n \n System.out.println("客户端已连接!");\n \n // 获取输入流,用于接收客户端发送的数据\n BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));\n \n // 获取输出流,用于向客户端发送数据\n PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);\n \n String message;\n \n // 循环读取客户端发送的数据,并向客户端发送响应\n while ((message = in.readLine()) != null) {\n System.out.println("客户端:" + message);\n out.println("服务器收到消息:" + message);\n }\n \n // 关闭流和连接\n in.close();\n out.close();\n clientSocket.close();\n serverSocket.close();\n \n } catch (IOException e) {\n e.printStackTrace();\n }\n }\n}\n"\n"import java.io.BufferedReader;\nimport java.io.IOException;\nimport java.io.InputStreamReader;\nimport java.io.PrintWriter;\nimport java.net.Socket;\n\npublic class Client {\n public static void main(String[] args) {\n try {\n // 创建Socket对象,指定服务器IP和端口号\n Socket socket = new Socket("localhost", 8888);\n \n // 获取输入流,用于接收服务器发送的数据\n BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));\n \n // 获取输出流,用于向服务器发送数据\n PrintWriter out = new PrintWriter(socket.getOutputStream(), true);\n \n // 向服务器发送消息\n out.println("Hello, Server!");\n \n // 接收服务器的响应\n String response = in.readLine();\n System.out.println("服务器:" + response);\n \n // 关闭流和连接\n in.close();\n out.close();\n socket.close();\n \n } catch (IOException e) {\n e.printStackTrace();\n }\n }\n}\n"\n"public class Main {\n public static void main(String[] args) {\n // 启动服务器\n Server.main(args);\n \n // 启动客户端\n Client.main(args);\n }\n}\n"\n}
原文地址: https://www.cveoy.top/t/topic/pqCx 著作权归作者所有。请勿转载和采集!