Java编写服务器端和客户端实验
时间: 2024-03-23 13:38:18 浏览: 13
好的,下面我会简单介绍一下Java编写服务器端和客户端的实验步骤:
1. 服务器端编写
服务器端主要是负责处理客户端的请求并回复相应的数据。可以按照以下步骤进行编写:
- 创建ServerSocket对象,指定服务器端口号;
- 调用ServerSocket的accept()方法等待客户端连接;
- 使用Socket对象获取输入流和输出流;
- 读取客户端发送的数据,处理请求;
- 将处理结果发送给客户端;
- 关闭Socket和ServerSocket对象。
下面是一个简单的服务器端代码示例:
```
import java.io.*;
import java.net.*;
public class Server {
public static void main(String[] args) {
try {
ServerSocket serverSocket = new ServerSocket(8888);
Socket socket = serverSocket.accept();
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter writer = new PrintWriter(socket.getOutputStream());
String message = reader.readLine();
System.out.println("Received message: " + message);
writer.println("Hello, " + message);
writer.flush();
socket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
2. 客户端编写
客户端主要是负责向服务器发送请求,并接收服务器端的响应。可以按照以下步骤进行编写:
- 创建Socket对象,指定服务器的IP地址和端口号;
- 使用Socket对象获取输入流和输出流;
- 向服务器端发送请求数据;
- 读取服务器端发送的数据;
- 关闭Socket对象。
下面是一个简单的客户端代码示例:
```
import java.io.*;
import java.net.*;
public class Client {
public static void main(String[] args) {
try {
Socket socket = new Socket("localhost", 8888);
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));
PrintWriter writer = new PrintWriter(socket.getOutputStream());
writer.println("world");
writer.flush();
String message = reader.readLine();
System.out.println("Received message: " + message);
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
以上就是Java编写服务器端和客户端的实验步骤,希望对您有所帮助。