您好,登錄后才能下訂單哦!
這篇文章主要介紹了java如何實現(xiàn)UDP,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
UDP:
需要datagramSocket來進行中間的運輸
無連接的傳輸層協(xié)議,提供面向事務(wù)的簡單不可靠信息傳輸服務(wù)、可能丟失、非常簡單、開銷小
一切以包為中心
數(shù)據(jù)傳輸不用IO流
接收端
Address already in use: Cannot bind同一個協(xié)議下端口不允許沖突
1、使用DatagramSocket指定端口 創(chuàng)建接收端
2、準備容器封裝成DatagramPacket 包裹
3、阻塞式接受包裹receive(DatagramPacket p);
4、分析數(shù)據(jù)getData()返回類型為字節(jié)數(shù)組,getLength()返回數(shù)據(jù)長度,類型為int
5、釋放資源
public class http { public static void main(String[]args) throws Exception { System.out.println("接收方啟動中..."); //1、使用DatagramSocket指定端口 創(chuàng)建接收端 DatagramSocket server=new DatagramSocket(9999);//同一臺電腦上端口不要沖突 //2、準備容器封裝成DatagramPacket 包裹 byte[] container=new byte[1024*60]; DatagramPacket packet=new DatagramPacket(container,0,container.length); //3、阻塞式接受包裹receive(DatagramPacket p); server.receive(packet);//阻塞式,有等待時間 //4、分析數(shù)據(jù)getData()返回類型為字節(jié)數(shù)組,getLength()返回數(shù)據(jù)長度,類型為int byte[] datas=packet.getData(); int len=packet.getLength(); System.out.println(new String(datas,0,datas.length)); //5、釋放資源 server.close(); } }
發(fā)送端
1、使用DatagramSocket指定端口 創(chuàng)建發(fā)送端
2、準備數(shù)據(jù),一定要轉(zhuǎn)成字節(jié)數(shù)組
3、準備容器封裝成DatagramPacket 包裹,需要指定目的地(ip地址和端口)
4、發(fā)送包裹send(DatagramPacket p);
5、釋放資源
public class client { public static void main(String[]args) throws IOException { System.out.println("發(fā)送啟動中..."); //1、使用DatagramSocket指定端口 創(chuàng)建發(fā)送端 DatagramSocket client =new DatagramSocket(8888); //2、準備數(shù)據(jù),一定要轉(zhuǎn)成字節(jié)數(shù)組 String data="我最帥"; byte[] datas=data.getBytes(); //3、準備容器封裝成DatagramPacket 包裹,需要指定目的地(ip地址和端口) DatagramPacket packet=new DatagramPacket(datas,0,datas.length,new InetSocketAddress("localhost",9999)); //4、發(fā)送包裹send(DatagramPacket p); client.send(packet); //5、釋放資源 client.close(); } }
感謝你能夠認真閱讀完這篇文章,希望小編分享的“java如何實現(xiàn)UDP”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。