以下是一个使用Java编写的Socket编程示例,演示了如何在客户端和服务器之间建立Socket连接并进行基本的通信。
首先,创建一个服务器端的代码,用于接受客户端连接并接收消息:
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class ServerExample {
public static void main(String[] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(12345);
System.out.println("等待客户端连接...");
Socket clientSocket = serverSocket.accept();
System.out.println("客户端已连接:" + clientSocket.getInetAddress().getHostAddress());
InputStream inputStream = clientSocket.getInputStream();
byte[] buffer = new byte[1024];
int bytesRead;
while ((bytesRead = inputStream.read(buffer)) != -1) {
String message = new String(buffer, 0, bytesRead);
System.out.println("接收到消息:" + message);
}
inputStream.close();
clientSocket.close();
serverSocket.close();
}
}
然后,创建一个客户端的代码,用于连接到服务器并发送消息:
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
public class ClientExample {
public static void main(String[] args) throws IOException {
Socket socket = new Socket("localhost", 12345);
String message = "Hello, server!";
byte[] bytes = message.getBytes();
OutputStream outputStream = socket.getOutputStream();
outputStream.write(bytes);
outputStream.close();
socket.close();
}
}
在这个示例中,服务器监听在端口12345上,客户端连接到服务器并发送消息。