真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

怎么在JAVA項(xiàng)目中實(shí)現(xiàn)一個(gè)UDP網(wǎng)絡(luò)通訊功能

今天就跟大家聊聊有關(guān)怎么在JAVA項(xiàng)目中實(shí)現(xiàn)一個(gè)UDP網(wǎng)絡(luò)通訊功能,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

在蘭山等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),成都營(yíng)銷網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè)公司,蘭山網(wǎng)站建設(shè)費(fèi)用合理。

具體如下:

UDP協(xié)議全稱是用戶數(shù)據(jù)報(bào)協(xié)議,在網(wǎng)絡(luò)中它與TCP協(xié)議一樣用于處理數(shù)據(jù)包,是一種無(wú)連接的協(xié)議。

在OSI模型中,在第四層——傳輸層,處于IP協(xié)議的上一層。UDP有不提供數(shù)據(jù)包分組、組裝和不能對(duì)數(shù)據(jù)包進(jìn)行排序的缺點(diǎn):

也就是說(shuō),當(dāng)報(bào)文發(fā)送之后,是無(wú)法得知其是否安全完整到達(dá)的。UDP用來(lái)支持那些需要在計(jì)算機(jī)之間傳輸數(shù)據(jù)的網(wǎng)絡(luò)應(yīng)用。

采用UDP協(xié)議要先把數(shù)據(jù)定義成數(shù)據(jù)報(bào)(Datagram)并在數(shù)據(jù)報(bào)中指明數(shù)據(jù)所要達(dá)到的Socket,再進(jìn)行數(shù)據(jù)傳遞。

主要涉及的兩個(gè)類:

DatagramPacket:數(shù)據(jù)報(bào)包類
DatagramSocket:數(shù)據(jù)端對(duì)端通訊類

簡(jiǎn)單demo之UDP服務(wù)端

public class UdpServer {
  public static void main(String[] args) {
    // 實(shí)現(xiàn)步驟1:創(chuàng)建DatagramSokcet
    try {
      DatagramSocket mSocket = new DatagramSocket(9999);
      // 實(shí)現(xiàn)步驟2:創(chuàng)建DatagramPacket
      byte[] data = new byte[1024];
      DatagramPacket mPacket = new DatagramPacket(data, data.length);
      // 實(shí)現(xiàn)步驟3:接收 數(shù)據(jù)
      mSocket.receive(mPacket);
      // 實(shí)現(xiàn)步驟4:處理數(shù)據(jù)
      String result = new String(data, 0, mPacket.getLength());
      System.out.println(result);
      /**** 回復(fù)客戶端 ****************/
      byte[] response = "我是UDP服務(wù)端,已經(jīng)回到你的請(qǐng)求".getBytes();
      mPacket.setData(response);
      mSocket.send(mPacket);
      mSocket.close();
    } catch (SocketException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
  }
}

簡(jiǎn)單demo之UDP客戶端

public class UdpClient {
  private static String sendData = "我是UDP客戶端,請(qǐng)求連接服務(wù)端";
  public static void main(String[] args) {
    try {
      // 步驟1:指定服務(wù)器的信息
      InetAddress mAddress = InetAddress.getByName("localhost");
      int port = 9999;
      byte[] data = sendData.getBytes();
      // 步驟2:創(chuàng)建DatagramPacket
      DatagramPacket mPacket = new DatagramPacket(data, data.length,
          mAddress, port);
      // 步驟3:創(chuàng)建DatagramSocket
      DatagramSocket mSocket = new DatagramSocket();
      // 步驟4:向服務(wù)端發(fā)送數(shù)據(jù)
      mSocket.send(mPacket);
      /***** 下面接收服務(wù)器返回?cái)?shù)據(jù) ***************************/
      // 實(shí)現(xiàn)步驟3:接收 數(shù)據(jù)
      mSocket.receive(mPacket);
      // 實(shí)現(xiàn)步驟4:處理數(shù)據(jù)
      String response = new String(data, 0, mPacket.getLength());
      System.out.println(response);
      // 關(guān)閉資源
      mSocket.close();
    } catch (UnknownHostException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    } catch (SocketException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
  }
}

看完上述內(nèi)容,你們對(duì)怎么在JAVA項(xiàng)目中實(shí)現(xiàn)一個(gè)UDP網(wǎng)絡(luò)通訊功能有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。


當(dāng)前題目:怎么在JAVA項(xiàng)目中實(shí)現(xiàn)一個(gè)UDP網(wǎng)絡(luò)通訊功能
文章來(lái)源:http://weahome.cn/article/pojsis.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部