最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java 基于UDP協(xié)議實現(xiàn)消息發(fā)送

 更新時間:2020年11月21日 17:36:42   作者:Hateyes  
這篇文章主要介紹了Java 基于UDP協(xié)議實現(xiàn)消息發(fā)送,幫助大家更好的理解和學(xué)習(xí)Java網(wǎng)絡(luò)編程,感興趣的朋友可以了解下

發(fā)短信:不用連接,但需要知道對方的地址,客戶端、服務(wù)端沒有明確的界限,可以說沒有客戶端、服務(wù)端一說。

發(fā)送端

package lesson03;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

/**
 * 發(fā)送端
 */
public class UdpClientDemo1 {

  public static void main(String[] args) throws Exception {

    //1、建立一個 Socket
    DatagramSocket socket = new DatagramSocket();

    /**
     * 2、建個包
     */

    //需要發(fā)送的消息
    String msg = "你好啊,服務(wù)器!";

    //發(fā)送地址
    InetAddress localhost = InetAddress.getByName("localhost"); //主機
    //發(fā)送端口
    int port = 9090;

    /**
     * 五個參數(shù):
     * @param  buf  msg.getBytes():需要發(fā)送的數(shù)據(jù)包
     * @param  offset  0:數(shù)據(jù)偏移量
     * @param  length  msg.getBytes().length:數(shù)據(jù)長度
     * @param  address  localhost:目標地址
     * @param  port  port:目標端口
     */
    DatagramPacket packet = new DatagramPacket(msg.getBytes(), 0, msg.getBytes().length, localhost, port);

    //3、發(fā)送包
    socket.send(packet);

    //4、關(guān)閉流
    socket.close();
  }

}

接收端

package lesson03;

import java.net.DatagramPacket;
import java.net.DatagramSocket;

/**
 * 接收端
 */
public class UdpServerDemo1 {

  public static void main(String[] args) throws Exception {

    //開放端口
    DatagramSocket socket = new DatagramSocket(9090);

    //接收數(shù)據(jù)包
    byte[] buffer = new byte[1024];
    DatagramPacket packet = new DatagramPacket(buffer, 0, buffer.length);

    //接收
    socket.receive(packet); //阻塞接收

    //輸出數(shù)據(jù)包地址
    System.out.println(packet.getAddress().getHostAddress());
    /**
     * 輸出數(shù)據(jù)包數(shù)據(jù)
     * packet:Data 類型
     * 通過構(gòu)造器轉(zhuǎn)成 String 類型:new String();
     */
    System.out.println(new String(packet.getData(), 0, packet.getLength()));

    //關(guān)閉連接
    socket.close();

  }

}

以上就是Java 基于UDP協(xié)議實現(xiàn)消息發(fā)送的詳細內(nèi)容,更多關(guān)于Java 消息發(fā)送的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解Java單元測試之Junit框架使用教程

    詳解Java單元測試之Junit框架使用教程

    單元測試就是針對最小的功能單元編寫測試代碼,Junit是使用Java語言實現(xiàn)的單元測試框架,它是開源的,Java開發(fā)者都應(yīng)當(dāng)學(xué)習(xí)并使用Junit編寫單元測試。本文就來講講Junit框架的使用教程,需要的可以參考一下
    2022-05-05
  • MyBatis?詳細講解動態(tài)?SQL的使用

    MyBatis?詳細講解動態(tài)?SQL的使用

    動態(tài)?SQL?是?MyBatis?的強大特性之一。如果你使用過?JDBC?或其它類似的框架,你應(yīng)該能理解根據(jù)不同條件拼接?SQL?語句有多痛苦,例如拼接時要確保不能忘記添加必要的空格,還要注意去掉列表最后一個列名的逗號。利用動態(tài)?SQL,可以徹底擺脫這種痛苦
    2022-04-04
  • Java14發(fā)布了,再也不怕NullPointerException了

    Java14發(fā)布了,再也不怕NullPointerException了

    這篇文章主要介紹了Java14發(fā)布了,再也不怕NullPointerException了,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2020-03-03
  • 關(guān)于java的九個預(yù)定義Class對象

    關(guān)于java的九個預(yù)定義Class對象

    這篇文章主要介紹了關(guān)于java的九個預(yù)定義Class對象,在Java中,沒有類就無法做任何事情。然而,并不是所有的類都具有面向?qū)ο筇卣?。如Math.random,并只需要知道方法名和參數(shù),需要的朋友可以參考下
    2023-05-05
  • SpringBoot之@Controller和@RequestMapping的實現(xiàn)原理解讀

    SpringBoot之@Controller和@RequestMapping的實現(xiàn)原理解讀

    這篇文章主要介紹了SpringBoot之@Controller和@RequestMapping的實現(xiàn)原理,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • Mybatis通過Mapper代理連接數(shù)據(jù)庫的方法

    Mybatis通過Mapper代理連接數(shù)據(jù)庫的方法

    這篇文章主要介紹了Mybatis通過Mapper代理連接數(shù)據(jù)庫的方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-11-11
  • 詳解如何使用MyBatis簡化JDBC開發(fā)

    詳解如何使用MyBatis簡化JDBC開發(fā)

    JavaEE?企業(yè)級?Java?項目中的經(jīng)典三層架構(gòu)為表現(xiàn)層,業(yè)務(wù)層和持久層.MyBatis?對?JDBC?代碼進行了封裝,作為一款優(yōu)秀的持久層框架,專門用于簡化JDBC開發(fā).本文主要介紹一下如何使用MyBatis簡化JDBC開發(fā),需要的可以參考一下
    2023-01-01
  • Java中用戶線程與守護線程的使用區(qū)別

    Java中用戶線程與守護線程的使用區(qū)別

    這篇文章主要介紹了Java中用戶線程與守護線程的使用區(qū)別,Java語言中無論是線程還是線程池,默認都是用戶線程,因此用戶線程也被成為普通線程,下文關(guān)于其與守護線程的區(qū)別詳情,需要的小伙伴可以參考一下
    2022-05-05
  • Java Iterator接口實現(xiàn)代碼解析

    Java Iterator接口實現(xiàn)代碼解析

    這篇文章主要介紹了Java Iterator接口實現(xiàn)代碼解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05
  • Spring定時任務(wù)注解@Scheduled詳解

    Spring定時任務(wù)注解@Scheduled詳解

    這篇文章主要介紹了Spring定時任務(wù)注解@Scheduled詳解,@Scheduled注解是包org.springframework.scheduling.annotation中的一個注解,主要是用來開啟定時任務(wù),本文提供了部分實現(xiàn)代碼與思路,需要的朋友可以參考下
    2023-09-09

最新評論

晴隆县| 广丰县| 肃南| 洮南市| 遂昌县| 凤城市| 广饶县| 察雅县| 石泉县| 青龙| 五莲县| 无为县| 临漳县| 桐庐县| 香河县| 武穴市| 丰镇市| 昌吉市| 汕头市| 长白| 高青县| 霞浦县| 崇州市| 金坛市| 东乡县| 桦南县| 嵊州市| 汝南县| 独山县| 长寿区| 罗平县| 宽城| 浦城县| 合作市| 江门市| 苏尼特右旗| 罗城| 西林县| 驻马店市| 崇礼县| 策勒县|