• java使用 TCP 的 Socket API 实现客户端服务器通信


    一:什么是 Socket(套接字)

    Socket 套接字是由系统提供于网络通信的技术, 是基于 TCP/IP 协议的网络通信的基本操作,要进行网络通信, 需要有一个 socket 对象, 一个 socket 对象对应着一个 socket 文件, 这个文件在 网卡上而不是硬盘上, 所以有了 sokcet 对象才能通过操作内存来操作网卡

    二:什么是Socket API?

    程序员进行网络编程主要是在 TCP/IP 五层网络模型中的应用层, 而数据在网络上传输, 需要进行封装和分用, 其中应用层需要调用传输层提供的 API , 这一组 API 就被称作 Socket API

    三:基于 TCP 协议的 Socket API

    TCP 协议是有链接, 面向字节流传输, 主要体现在 : 发送方和接收方在网络通信之间要先建立连接, 并且传输的数据的基本单位是字节

    1. ServerSocket 类
      (1)ServerSocket 类的构造方法
      在这里插入图片描述
      (2)ServerSocket 类的成员方法
      在这里插入图片描述
    2. Socket 类
      Socket 这个类用于客户端, 也可以在服务器与客户端连接之后使用, 无论客户端或服务器使用, 都会保存对端的相关信息
      (1)Socket 类的构造方法
      在这里插入图片描述
      (2)Socket 类的成员方法 :
      在这里插入图片描述
      getInputStream()返回的对象用来输入(读), 从网卡读数据到内存
      getOutputStream返回的对象用来输出(写), 从内存写数据到网卡

    四:TCP协议实现网络通信

    一定是服务器先启动, 一直等待客户端发来请求, 所以按照时间顺序, 代码逻辑应该如下所示 :
    在这里插入图片描述

  • 相关阅读:
    查找算法【二叉查找树】 - 二叉查找树的删除
    C++ Reference: Standard C++ Library reference: C Library: ctime: asctime
    性能测试-Jmeter测试工具
    C++ 实现读文件之 字节方式的
    java+ssm+mysql高校图书管理系统
    xss测试步骤总结
    Kotlin的基本使用
    大数据技术之 Kafka
    6 Processes 下
    逃避型人格分析,如何改变逃避型性格?
  • 原文地址:https://blog.csdn.net/weixin_44582492/article/details/134475707