java利用udp实现发送数据

 更新时间:2020年07月28日 15:46:12   作者:佑佑有话说  
这篇文章主要为大家详细介绍了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) {
  // TODO Auto-generated catch block
  e.printStackTrace();
 }

 }

}

3.接收端

package cn.uu710.SocketTest;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
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. 运行程序

先启动接收端,再运行发送端
启动接收端后,程序并未停止,因为还未接收到消息

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 深入理解Java线程池从设计思想到源码解读

    深入理解Java线程池从设计思想到源码解读

    这篇文章主要介绍了深入理解Java线程池从设计思想到源码解读,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • 浅谈spring中用到的设计模式及应用场景

    浅谈spring中用到的设计模式及应用场景

    下面小编就为大家带来一篇浅谈spring中用到的设计模式及应用场景。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-08-08
  • Java List 用法实例详解

    Java List 用法实例详解

    这篇文章主要介绍了Java List 用法实例详解的相关资料,需要的朋友可以参考下
    2017-09-09
  • Java读取文件的简单实现方法

    Java读取文件的简单实现方法

    这篇文章主要介绍了Java读取文件的简单实现方法,通过一个读取txt格式的log文件为例,详细的讲述了Java读取文件的方法及原理,需要的朋友可以参考下
    2014-09-09
  • Spring学习之Bean的装配多种方法

    Spring学习之Bean的装配多种方法

    本篇文章主要介绍了Spring学习之Bean的装配三种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • 详解Java中的hashcode

    详解Java中的hashcode

    这篇文章主要介绍了详解Java中的hashcode,文中有非常详细的代码示例,对正在学习java的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-05-05
  • SpringBoot3.X配置OAuth的代码实践

    SpringBoot3.X配置OAuth的代码实践

    在进行Java后端技术框架版本升级时,特别是将SpringBoot从2.X升级到3.X,发现对OAuth的配置有大幅变更,新版本中删除了多个常用配置类,本文给大家介绍SpringBoot3.X配置OAuth的相关知识,感兴趣的朋友一起看看吧
    2024-09-09
  • 一篇文章带你深入了解Java异常

    一篇文章带你深入了解Java异常

    本篇文章主要介绍了java异常处理机制及应用,异常处理机制是Java语言的一大特色。从异常处理的机制、异常处理的方法、异常处理的原则等方面介绍Java语言的异常处理技术,有兴趣的可以了解一下
    2021-08-08
  • 分享Spring Cloud OpenFeign 的五个优化技巧

    分享Spring Cloud OpenFeign 的五个优化技巧

    这篇文章主要分享的是Spring Cloud OpenFeign 的五个优化技巧,OpenFeign 是 Spring 官方推出的一种声明式服务调用和负载均衡组件,更多相关内容需要的小伙伴可以参考一下
    2022-05-05
  • Java 实现常见的非对称加密算法

    Java 实现常见的非对称加密算法

    这篇文章主要介绍了Java 实现常见的非对称加密算法,帮助大家更好的理解和使用Java,感兴趣的朋友可以了解下
    2020-11-11

最新评论