18
2021
02

UDP和TDP发送和接受数据

Java中的udp通信

UDP发送数据

UDP协议是一种不可靠的网络协议,它在通信的两端各建立一个Socket对象,但是这两个Socket只是发 送,接收数据的对象,因此对于基于UDP协议的通信双方而言,没有所谓的客户端和服务器的概念 Java提供了DatagramSocket类作为基于UDP协议的Socket

方法名
用法
DatagramSocket()

创建一个发送对象

DatagramPacket(byte[] buf,int len,InetAddress add,int port)
代表传输的数据内容,长度,ip地址,传输的端口号
void send(DatagramPacket p)发送数据报包
void close()关闭发送端
void receive(DatagramPacket p)接受数据包
UDP发送数据的步骤 

1、创建发送端的Socket对象(DatagramSocket) 

2、创建数据,并把数据打包 

3、调用DatagramSocket对象的方法发送数据 

4、关闭发送端

image.png

UDP接收数据的步骤

1、接收数据的步骤

2、创建接收端的Socket对象(DatagramSock),获取发送的端口号

3、创建一个数据包,用于接收数据

4、调用DatagramSocket对象的方法接收数据

5、解析数据包,并把数据在控制台显示

6、关闭接收端

方法名用法
DatagramPacket(byte[] buf, int len)创建一个DatagramPacket用于接收长度为len的数据包
byte[] getData()获取数据
int getLength()获取数据的长度

image.png

Java中的TCP通信发送数据

Java对基于TCP协议的的网络提供了良好的封装,使用Socket对象来代表两端的通信端口,

并通过 Socket产生IO流来进行网络通信, Java为客户端提供了Socket类,为服务器端提供了ServerSocket类

方法名用法
Socket(InetAddress address,int port)创建流套接字并将其连接到指定IP指定端口号
Socket(String host, int port)创建流套接字并将其连接到指定主机上的指定端口号
InputStream getInputStream(返回此套接字的输入流
OutputStream getOutputStream()返回此套接字的输出流

image.png


TCP接受数据

方法用法
ServletSocket(int port)创建绑定到指定端口的服务器套接字
Socket accept()监听要连接到此的套接字并接受它

image.png







« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。