03 TCP通信
一、TCP发送数据步骤
- 创建Socket对象
- 获取输出流,并写入数据
- 释放资源
二、TCP接收数据步骤
- 创建ServerSocket对象
- 等待客户端连接
- 获得输入流对象
- 释放资源
三、TCP的三次握手和四次挥手
四、TCP通信实例
数据发送端:
import java.io.IOException;
import java.io.OutputStream;
import java.net.Socket;
public class ServerDemo {
public static void main(String[] args) throws IOException {
//1.创建Socket对象
Socket socket = new Socket("127.0.0.1", 10000);
//2. 获取输出流,并写入数据
OutputStream out = socket.getOutputStream();
String str = "hello world !";
out.write(str.getBytes());
//3.释放资源
socket.close();
out.close();
}
}
数据接收端:
import java.io.IOException;
import java.io.InputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class ClientDemo {
public static void main(String[] args) throws IOException {
//1. 创建ServerSocket对象
ServerSocket serverSocket = new ServerSocket(10000);
//2.等待客户端连接
Socket accept = serverSocket.accept();
InputStream inputStream = accept.getInputStream();
//3.获得输入流对象,并解析数据
int b=-1;
while ((b=inputStream.read())!=-1){
System.out.print((char)b);
}
//4.释放资源
inputStream.close();
accept.close();
serverSocket.close();
}
}
accept.close();
serverSocket.close();
}
}