java利用udp实现发送数据

网友投稿 230 2022-11-29


java利用udp实现发送数据

本文实例为大家分享了java利用udp实现发送数据的具体代码,供大家参考,具体内容如下

1.udp的特点

数据以包的形式发送数据

udp是面向无连接的

udp会丢失数据,是一种不安全的连接

udp的传输速度较快

2.发送端

package cn.uu710.SocketTest;

import java.net.DatagramPacket;

import java.net.DatagramSocket;

import java.net.InetAddress;

import java.net.SocketException;

public class Send1 {

public static void main(String[] args) {

try {

DatagramSocket datagramSocket = new DatagramSocket();

String data = "这是张佑发送的消息!";

DatagramPacket datagramPacket = new DatagramPacket(data.getBytes(),data.getBytes().length,InetAddress.getLocalHost(),8088);

//发送

System.out.println("正在准备发送……");

datagramSocket.send(datagramPacket);

System.out.println("已发送……");

datagramSocket.close();

} catch (Exception e) {

// TODPeiHXKQNrzO Auto-generated catch block

e.printStackTrace();

}

}

}

3.接收端

package cn.uu710.SocketTest;

import java.net.DatagramPacket;

import java.net.DatagPeiHXKQNrzramSocket;

import java.net.SocketException;

import com.sun.org.apache.bcel.internal.generic.NEW;

public class receive1 {

public static void main(String[] args) {

try {

DatagramSocket datagramSocket = new DatagramSocket(8088);

byte[] b = new byte[1024];

DatagramPacket datagramPacket = new DatagramPacket(b,b.length);

System.out.println("正在准备接收……");

//未接收之前为阻塞状态

datagramSocket.receive(datagramPacket);

System.out.println("接收内容:"+new String(b,0,b.length));

System.out.println("已经接收……");

datagramSocket.close();

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

4. 运行程序

先启动接收端,再运行发送端

启动接收端后,程序并未停止,因为还未接收到消息

再启动发送端,此时接收端成功接收到消息,之后程序停止


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Logback配置文件这么写,还说你不会整理日志?
下一篇:如何基于java实现解压ZIP TAR等文件
相关文章

 发表评论

暂时没有评论,来抢沙发吧~