java网络编程:12、基于UDP的socket编程(二)代码通信-简单实例
发布日期:2021-06-29 01:43:17 浏览次数:3 分类:技术文章

本文共 1260 字,大约阅读时间需要 4 分钟。

声明:本教程不收取任何费用,欢迎转载,尊重作者劳动成果,不得用于商业用途,侵权必究!!!

文章目录


通过上篇文章了解了基于UDP通信的理论、基本步骤以及它跟TCP的区别,大家如需了解可参考 这篇写一个简单的实例来感受一下!

一、基于UDP服务器端程序的编写

/**	 * 基于UDP服务器端程序的编写	 */	public static void recv() {		try {			//创建数据报套接字对象,绑定端口号为6000			DatagramSocket ds = new DatagramSocket(6000);			//构建数据包接收数据:			//创建字节数组			byte[] buf = new byte[100];			//创建数据包对象,它的长度不能超过数组的长度,我们把它设为100			DatagramPacket dp = new DatagramPacket(buf, 100);			//接收数据			ds.receive(dp);			//打印数据			//getLength方法返回实际接收数;getData方法返回数据,返回格式为字节数组			System.out.println(new String(buf, 0, dp.getLength()));						//关闭数据报套接字			ds.close();		} catch (Exception ex) {			ex.printStackTrace();		}	}

二、基于UDP客户端程序的编写

/**	 * 基于UDP客户端程序的编写	 */	public static void send() {		try {			//创建一个数据报对象。			DatagramSocket ds = new DatagramSocket();			//要发送的数据			String str = "Hello,this is zhangsan";			//构造一个发送数据包:			//InetAddress.getByName("localhost"):获得本地ip地址			//端口号指定为6000			DatagramPacket dp = new DatagramPacket(					str.getBytes(), 					str.length(),					InetAddress.getByName("localhost"),					6000);			//发送数据包			ds.send(dp);						//关闭数据报套接字			ds.close();		} catch (Exception ex) {			ex.printStackTrace();		}	}

三、测试打印

我们先启动recv接收端,然后再启动send发送端,那么我们可以看到接收端收到了信息,如下图:

那么对于这个recv接收端来说,它能不能够给我们send发送端,回一个信息呢?

详见下篇文章:

 

四、系列文章(java网络编程)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载地址:https://blog.csdn.net/YuDBL/article/details/86069093 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:java网络编程:13、基于UDP的socket编程(三)实现相互发送接收消息
下一篇:java网络编程:11、基于UDP的socket编程(一)理论、基本步骤

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月14日 06时39分40秒