Java创建套接字实现服务端和客户端交互代码
以下是一个简单的Java代码示例,演示了如何创建一个基本的服务端和客户端套接字,并在它们之间进行交互。
服务端代码(Server.java):
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) {
try {
// 创建ServerSocket对象,指定监听的端口号
ServerSocket serverSocket = new ServerSocket(9999);
System.out.println("等待客户端连接...");
// 接受客户端连接
Socket clientSocket = serverSocket.accept();
System.out.println("客户端已连接!");
// 获取输入流和输出流
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true);
// 读取客户端发送的数据并打印
String message = in.readLine();
System.out.println("客户端发送的消息:" + message);
// 向客户端发送响应消息
out.println("已收到消息:" + message);
// 关闭流和套接字
in.close();
out.close();
clientSocket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
客户端代码(Client.java):
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;
public class Client {
public static void main(String[] args) {
try {
// 创建Socket对象,指定连接的服务器和端口号
Socket socket = new Socket("localhost", 9999);
// 获取输入流和输出流
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
// 向服务器发送消息
String message = "Hello, Server!";
out.println(message);
// 读取服务器的响应消息并打印
String response = in.readLine();
System.out.println("服务器响应的消息:" + response);
// 关闭流和套接字
in.close();
out.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
以上代码创建了一个基本的服务端和客户端套接字。服务端监听9999端口,客户端连接到该端口,并向服务端发送消息。服务端接收到消息后,向客户端发送响应消息。最后,客户端读取服务器的响应消息并打印
原文地址: https://www.cveoy.top/t/topic/ihfm 著作权归作者所有。请勿转载和采集!