亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java實現(xiàn)UDP互發(fā)消息

 更新時間:2020年07月28日 14:56:09   作者:~故事的小黃花~  
這篇文章主要為大家詳細介紹了Java實現(xiàn)UDP互發(fā)消息,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了Java實現(xiàn)UDP互發(fā)消息的具體代碼,供大家參考,具體內(nèi)容如下

UDP的發(fā)送端

package udp;
/**
UDP發(fā)送端
*/
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;

public class UdpClient {
 public static void main(String[] args) throws IOException {
  System.out.println("發(fā)送方啟動中......");
  //使用DatagramSocket指定端口,創(chuàng)建發(fā)送端
  DatagramSocket client = new DatagramSocket(8888);
  //準(zhǔn)備數(shù)據(jù),轉(zhuǎn)換為字節(jié)數(shù)組
  String data ="帥哥";
  byte[] datas = data.getBytes();
  //封裝成DatagramPacket包裹,需要指定目的地
  DatagramPacket packet = new DatagramPacket(datas,0,datas.length,new InetSocketAddress("localhost",9999));
  //發(fā)送包裹send(DatagramPacket p)
  client.send(packet);
  //釋放資源
  client.close();
 }
}

UDP的接收端

package udp;
/**
UDP接收端
*/
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;

public class UdpServer {
 public static void main(String[] args) throws IOException {
  System.out.println("接收方啟動中......");
  //使用DatagramSocket指定端口創(chuàng)建接收端,端口值要與客戶端的發(fā)送包裹一致
  DatagramSocket server =new DatagramSocket(9999);
  //準(zhǔn)備容器封裝成DatagramPacket包裹
  byte[] container = new byte[1024*60];
  DatagramPacket packet = new DatagramPacket(container,0,container.length);
  //阻塞式
  server.receive(packet);
  byte[] datas = packet.getData();
  int len=packet.getLength();
  System.out.println(new String(datas,0,len));
  server.close();
 }
}

注意:在Intellij idea中運行時,要先把兩個端的平行運行設(shè)置打開,不然每次只能打開發(fā)送端或者接收端,不能同時打開,具體操作如下:

最后,運行結(jié)果如下:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Java 數(shù)組復(fù)制clone方法實現(xiàn)詳解

    Java 數(shù)組復(fù)制clone方法實現(xiàn)詳解

    這篇文章主要介紹了Java 數(shù)組復(fù)制clone方法實現(xiàn)詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-11-11
  • java中的異步加載new Thread()方式

    java中的異步加載new Thread()方式

    這篇文章主要介紹了java中的異步加載new Thread()方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 為什么Java volatile++不是原子性的詳解

    為什么Java volatile++不是原子性的詳解

    這篇文章主要給大家介紹了關(guān)于為什么Java volatile++不是原子性的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • SpringBoot3集成Zookeeper的代碼詳解

    SpringBoot3集成Zookeeper的代碼詳解

    ZooKeeper是一個集中的服務(wù),用于維護配置信息、命名、提供分布式同步、提供組服務(wù),分布式應(yīng)用程序以某種形式使用所有這些類型的服務(wù),本文將給大家介紹SpringBoot3集成Zookeeper的代碼,文中通過代碼示例介紹的非常詳細,需要的朋友可以參考下
    2024-01-01
  • 在Spring Boot中加載XML配置的完整步驟

    在Spring Boot中加載XML配置的完整步驟

    這篇文章主要給大家介紹了關(guān)于在Spring Boot中加載XML配置的完整步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • springboot使用nacos的示例詳解

    springboot使用nacos的示例詳解

    這篇文章主要介紹了springboot使用nacos的示例代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • Java數(shù)字轉(zhuǎn)中文大寫工具類詳細代碼(拿去即用)

    Java數(shù)字轉(zhuǎn)中文大寫工具類詳細代碼(拿去即用)

    最近項目中用到金額轉(zhuǎn)大寫的地方,索性給大家總結(jié)下,這篇文章主要給大家介紹了關(guān)于Java數(shù)字轉(zhuǎn)中文大寫工具類的相關(guān)資料,文中給出了詳細的代碼示例,需要的朋友可以參考下
    2024-05-05
  • Spring Boot整合Spring Security簡單實現(xiàn)登入登出從零搭建教程

    Spring Boot整合Spring Security簡單實現(xiàn)登入登出從零搭建教程

    這篇文章主要給大家介紹了關(guān)于Spring Boot整合Spring Security簡單實現(xiàn)登入登出從零搭建的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧
    2018-09-09
  • 關(guān)于springboot中的自定義配置項

    關(guān)于springboot中的自定義配置項

    這篇文章主要介紹了關(guān)于springboot中的自定義配置項,在項目開發(fā)的過程中,經(jīng)常需要自定義系統(tǒng)業(yè)務(wù)方面的配置文件及配置項,Spring Boot提供了@value注解、@ConfigurationProperties注解和Environment接口等3種方式自定義配置項,需要的朋友可以參考下
    2023-07-07
  • 詳解Spring中bean生命周期回調(diào)方法

    詳解Spring中bean生命周期回調(diào)方法

    本篇文章主要介紹了詳解Spring中bean生命周期回調(diào)方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07

最新評論