网络编程基础:Java Socket和ServerSocket实例教程
在Java中,Socket和ServerSocket是用于实现客户端与服务器端之间通信的两个类。下面我们将通过实例来详细讲解。
- 创建Socket实例(客户端)
import java.io.*;
import java.net.*;
// 创建Socket对象
Socket socket = new Socket("localhost", 8000); // "localhost"是本地服务器地址,8000是端口号
// 输出Socket的状态信息
System.out.println(socket);
// 开始通过Socket读写数据
PrintWriter out = new PrintWriter(socket.getOutputStream(), true));
BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream())));
out.println("客户端向服务端发送的数据");
in.readLine(); // 读取服务器返回的数据
// 关闭Socket连接
socket.close();
- 创建ServerSocket实例(服务器端)
import java.io.*;
import java.net.*;
// 创建ServerSocket对象,绑定到特定的端口号
ServerSocket serverSocket = new ServerSocket(8000); // 8000是预设的端口号
// 输出ServerSocket的状态信息
System.out.println(serverSocket);
// 开始监听客户端连接请求
Socket clientSocket = serverSocket.accept(); // accept()方法会等待一个客户端连接,并将其作为新的Socket返回
// 输出客户端Socket的状态信息
System.out.println(clientSocket);
// 与客户端进行数据交互,这里以打印为例
PrintWriter out = new PrintWriter(clientSocket.getOutputStream(), true));
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream())));
out.println("服务器向客户端发送的数据");
in.readLine(); // 读取客户端返回的数据
// 关闭Socket连接
clientSocket.close();
serverSocket.close();
以上就是Java Socket和ServerSocket的实例教程,希望对你理解网络编程有所帮助。
还没有评论,来说两句吧...