Java 网络编程 – TCP协议基本步骤

传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。TCP旨在适应支持多网络应用的分层协议层次结构。 连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。 原则上,TCP应该能够在从硬线连接到分组交换或电路交换网络的各种通信系统之上操作。
TCP:TCP协议基于请求-响应模式,利用io流实现数据的传输。

创建服务器

1、指定端口 使用ServerSocket创建服务器
2、阻塞式等待连接accept,有一个accept就建立了一个客户端
3、操作:io流
4、释放资源

public class tcp {
public static void main(String[]args) throws IOException
{
System.out.println("-----Server-----");
// 1、指定端口 使用ServerSocket创建服务器
ServerSocket server=new ServerSocket(8888);
// 2、阻塞式等待连接accept
Socket client=server.accept();//返回一个Socket对象
System.out.println("一个客户端建立了连接");
// 3、操作:io流
DataInputStream dis=new DataInputStream(client.getInputStream());//输入,
client.getInputStream()返回一个字节输入流
String data=dis.readUTF();
System.out.println(data);
// 4、释放资源
dis.close();
client.close();
server.close();
}
}

创建客户端

1、建立连接:使用Socket创建客户端+服务的地址和端口
2、操作:输入输出流操作
3、释放资源

public class tcp2 {
public static void main(String[]args) throws IOException
{
System.out.println("--------Client---------");
//1、建立连接:使用Socket创建客户端+服务的地址和端口
Socket client2=new Socket("localhost",8888);
//2、操作:输入输出流操作
DataOutputStream dos=new DataOutputStream(client2.getOutputStream());//输出
String data="杜雨龙最帅";
dos.writeUTF(data);
dos.flush();
//3、释放资源
dos.close();
client2.close();
}
}

原文地址: https://www.linuxprobe.com/java-tcp-itpub.html

    原文作者:时间:2019-10-19 15:20:37
    原文地址: http://blog.itpub.net/31559985/viewspace-2660618/
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞