TCP协议回顾:
- TCP是一种 面向连接 , 安全 、可靠 的传输数据的协议
- 传输前,采用 "三次握手" 方式,点对点通信 ,是可靠的
- 在连接中可进行大数据量的传输
编写 客户端 代码
javapackage com.csdn.d5_socket1; import java.io.IOException; import java.io.OutputStream; import java.io.PrintStream; import java.net.Socket; /** * 目标:完成 Socket 网络编程入门案例的 客户端开发,实现 1 发 1 收 */ public class ClientDemo1 { public static void main(String[] args) { try{ System.out.println("===客户端启动==="); //1、创建Socket通信管道请求有服务端的连接 Socket socket = new Socket("127.0.0.1", 7777); //2、从socket通信管道中得到一个字节输出流 负责发送数据 OutputStream os = socket.getOutputStream(); //3、把低级的字节流包装成打印流 PrintStream ps = new PrintStream(os); //4、发送消息 ps.println("我是TCP的客户端,我已经与你对接,并发出邀请;约吗?"); ps.flush(); } catch (IOException e) { throw new RuntimeException(e); } } }编写 服务端 代码、原理分析
javapackage com.csdn.d5_socket1; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.ServerSocket; import java.net.Socket; /** * 目标:开发 Socket 网络编程入门代码的 服务端 ,实现接收消息 */ public class ServerDemo2 { public static void main(String[] args) { try { System.out.println("===服务端启动成功==="); //1、注册端口 ServerSocket serverSocket = new ServerSocket(7777); //2、必须调用accept方法:等待接收客户端的Socket连接请求,建立Socket通信管道 Socket socket = serverSocket.accept(); //3、从socket通信管道中得到一个字节输入流 InputStream is = socket.getInputStream(); //4、把字节输入流包装成缓冲字符输入流进行消息的接收 BufferedReader br = new BufferedReader(new InputStreamReader(is)); //5、按照行读取消息 String msg; if ((msg = br.readLine()) != null) { System.out.println(socket.getRemoteSocketAddress() + "说了:" + msg); } } catch (IOException e) { throw new RuntimeException(e); } } }
TCP通信-实现 1 发 1 收
丁总学Java2023-10-19 19:31
相关推荐
流浪00111 小时前
Linux系统22:——文件(六):目标文件与ELF深度解析:从编译到加载的全景揭秘白狐_79811 小时前
【408计算机网络|第03章·上|408-CN-03A】数据链路层(上):组帧、差错控制与可靠传输其实防守也摸鱼11 小时前
镜像校验完成iso完整操作流程(Windows 环境,适配 Ubuntu 22.04 / 24.04)老赵的博客11 小时前
工控机之udp远程控制努力努力再努力wz11 小时前
【分布式系统与 RPC 框架系列】从单机瓶颈到远程调用:一文理解分布式架构与 RPC 原理沉默de荒年 对月影成12 小时前
机房断电搞崩服务器 | 人大金仓 V8 全量备份跨实例完整恢复实录GIS数据转换器12 小时前
智慧灌区管理平台其实防守也摸鱼14 小时前
KMP全栈开发:从Android到AI Agent的技术演进与实践冰封之寂1 天前
Docker 资源管理终极指南:CPU、内存与 IO 的精细化控制treesforest1 天前
平时上网留下的IP地址,到底能被查到什么?