基于TCP和UDP的Socket编程的主要步骤

  • JDK 在 java.net 包中为 TCP 和 UDP 两种通信协议提供了相应的 Socket 编程类
  • TCP 协议,服务端对应 ServerSocket,客户端对应 Socket
  • UDP 协议对应 DatagramSocket
  • 基于 TCP 协议创建的套接字可以叫做流套接字,服务器端相当于一个监听器,用来监听端口,服务器与客服端之间的通讯都是输入输出流来实现的
  • 基于 UDP 协议的套接字就是数据报套接字,客户端和服务端都要先构造好相应的数据包

 

基于 TCP 协议的 Socket 编程的主要步骤

服务端:

  • 指定本地的端口创建 ServerSocket 实例, 用来监听指定端口的连接请求
  • 通过 accept() 方法返回的 Socket 实例,建立了一个和客户端的新连接
  • 通过 Sockect 实例获取 InputStream 和 OutputStream 读写数据
  • 数据传输结束,调用 socket 实例的 close() 方法关闭连接

客户端:

  • 指定的远程服务器 IP 地址和端口创建 Socket 实例
  • 通过 Socket 实例获取 InputStream 和 OutputStream 来进行数据的读写
  • 数据传输结束,调用 socket 实例的 close() 方法关闭连接

 

基于 UDP 协议的 Socket 编程的主要步骤

服务端:

  • 指定本地端口创建 DatagramSocket 实例
  • 通过字节数组,创建 DatagramPacket 实例,调用 DatagramSocket 实例的  receive() 方法,用 DatagramPacket 实例来接收数据
  • 设置 DatagramPacket 实例返回的数据,调用 DatagramSocket 实例的 send() 方法来发送数据
  • 数据传输完成,调用 DatagramSocket 实例的 close() 方法

客户端:

  • 创建 DatagramSocket 实例
  • 通过 IP 地址端口和数据创建 DatagramSocket 实例,调用 DatagramSocket 实例 send() 方法发送数据包
  • 通过字节数组创建 DatagramSocket 实例,调用 DatagramSocket 实例 receive() 方法接受数据包
  • 数据传输完成,调用 DatagramSocket 实例的 close() 方法

给TA打赏
共{{data.count}}人
人已打赏
Java

Java中的Socket是什么?

2020-7-24 9:01:48

Java

并行是什么意思?与并发的区别是什么?

2020-7-31 0:00:00

本站所发布的一切源码、模板、应用等文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权。本站内容适用于DMCA政策。若您的权利被侵害,请与我们联系处理,站长 QQ: 84087680 或 点击右侧 私信:盾给网 反馈,我们将尽快处理。
⚠️
本站所发布的一切源码、模板、应用等文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权。本站内容适用于DMCA政策
若您的权利被侵害,请与我们联系处理,站长 QQ: 84087680 或 点击右侧 私信:盾给网 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索