java利用udp實(shí)現(xiàn)發(fā)送數(shù)據(jù)
本文實(shí)例為大家分享了java利用udp實(shí)現(xiàn)發(fā)送數(shù)據(jù)的具體代碼,供大家參考,具體內(nèi)容如下
1.udp的特點(diǎn)
數(shù)據(jù)以包的形式發(fā)送數(shù)據(jù) udp是面向無(wú)連接的 udp會(huì)丟失數(shù)據(jù),是一種不安全的連接 udp的傳輸速度較快2.發(fā)送端
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 = '這是張佑發(fā)送的消息!'; DatagramPacket datagramPacket = new DatagramPacket(data.getBytes(),data.getBytes().length,InetAddress.getLocalHost(),8088); //發(fā)送 System.out.println('正在準(zhǔn)備發(fā)送……'); datagramSocket.send(datagramPacket); System.out.println('已發(fā)送……'); 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('正在準(zhǔn)備接收……'); //未接收之前為阻塞狀態(tài) datagramSocket.receive(datagramPacket); System.out.println('接收內(nèi)容:'+new String(b,0,b.length)); System.out.println('已經(jīng)接收……'); datagramSocket.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }}
4. 運(yùn)行程序
先啟動(dòng)接收端,再運(yùn)行發(fā)送端啟動(dòng)接收端后,程序并未停止,因?yàn)檫€未接收到消息
再啟動(dòng)發(fā)送端,此時(shí)接收端成功接收到消息,之后程序停止
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 如何基于python3和Vue實(shí)現(xiàn)AES數(shù)據(jù)加密2. 10個(gè)提供免費(fèi)PHP腳本下載的網(wǎng)站3. PHP擴(kuò)展之APC——Alternative PHP Cache(可選PHP緩存)4. PHP設(shè)計(jì)模式(四)原型模式Prototype實(shí)例詳解【創(chuàng)建型】5. Java 基于UDP協(xié)議實(shí)現(xiàn)消息發(fā)送6. Python編寫nmap掃描工具7. Java向Runnable線程傳遞參數(shù)方法實(shí)例解析8. python 爬取嗶哩嗶哩up主信息和投稿視頻9. ASP.NET MVC前臺(tái)動(dòng)態(tài)添加文本框并在后臺(tái)使用FormCollection接收值10. php5.6不能擴(kuò)展redis.so的解決方法
