java实现socket通信
时间: 2023-11-18 21:10:54 浏览: 165
Java实现Socket通信可以分为两种方式:客户端和服务端。下面以简单的示例代码来介绍:
1. 客户端
客户端一般通过Socket类来实现。
```java
import java.io.*;
import java.net.*;
public class Client {
public static void main(String[] args) {
try {
// 创建Socket对象,指定服务器地址和端口号
Socket socket = new Socket("127.0.0.1", 8888);
// 获取输出流,向服务器发送消息
OutputStream os = socket.getOutputStream();
PrintWriter pw = new PrintWriter(os);
pw.write("Hello Server!");
pw.flush();
// 关闭输出流和Socket对象
pw.close();
os.close();
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
2. 服务端
服务端一般通过ServerSocket类来实现。
```java
import java.io.*;
import java.net.*;
public class Server {
public static void main(String[] args) {
try {
// 创建ServerSocket对象,绑定监听端口
ServerSocket serverSocket = new ServerSocket(8888);
// 循环监听客户端连接
while (true) {
// 等待客户端连接,阻塞方法
Socket socket = serverSocket.accept();
// 获取输入流,读取客户端发送的消息
InputStream is = socket.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String message = br.readLine();
System.out.println("Received message: " + message);
// 关闭输入流和Socket对象
br.close();
is.close();
socket.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
以上就是Java实现Socket通信的简单示例代码,可以通过运行客户端和服务端来进行通信。
阅读全文