生活随笔
收集整理的这篇文章主要介绍了
[转]java 组播
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
1. 组播知识介绍: http://blog.csdn.net/happy_david/article/details/1569209
2. java 组播实现:来自: http://blog.csdn.net/a352193394/article/details/7395600
下面来演示一下使用Java Socket的组播类实现一个组播的小案例
首先是接收端
[java] view plaincopyprint?
package com.bird.test; import java.net.DatagramPacket; import java.net.InetAddress; import java.net.MulticastSocket; import java.util.Date; public class MulticastReceive { public static void main(String[] args) throws Exception { test(); } public static void test() throws Exception{ InetAddress group = InetAddress.getByName("224.0.0.2"); int port = 8888; MulticastSocket msr = null; try { msr = new MulticastSocket(port); msr.joinGroup(group); byte[] buffer = new byte[8192]; System.out.println("接收数据包启动!(启动时间: "+new Date()+")"); while(true){ DatagramPacket dp = new DatagramPacket(buffer, buffer.length); msr.receive(dp); String s = new String(dp.getData(),0,dp.getLength()); System.out.println(s); } } catch (Exception e) { e.printStackTrace(); }finally{ if(msr!=null){ try { msr.leaveGroup(group); msr.close(); } catch (Exception e2) { } } } } }
然后是发送端
[java] view plaincopyprint?
package com.bird.test; import java.net.DatagramPacket; import java.net.InetAddress; import java.net.MulticastSocket; import java.util.Date; public class MulticastSender { public static void server() throws Exception{ InetAddress group = InetAddress.getByName("224.0.0.2"); int port = 8888; MulticastSocket mss = null; try { mss = new MulticastSocket(port); mss.joinGroup(group); System.out.println("发送数据包启动!(启动时间"+new Date()+")"); while(true){ String message = "Hello "+new Date(); byte[] buffer = message.getBytes(); DatagramPacket dp = new DatagramPacket(buffer, buffer.length,group,port); mss.send(dp); System.out.println("发送数据包给 "+group+":"+port); Thread.sleep(1000); } } catch (Exception e) { e.printStackTrace(); }finally{ try { if(mss!=null){ mss.leaveGroup(group); mss.close(); } } catch (Exception e2) { } } } public static void main(String[] args) throws Exception { server(); } }
通过开启多个接收端,然后开启发送端,就可以实现组播的效果
转载于:https://www.cnblogs.com/harrysun/p/3376869.html
创作挑战赛新人创作奖励来咯,坚持创作打卡瓜分现金大奖
总结
以上是生活随笔为你收集整理的[转]java 组播的全部内容,希望文章能够帮你解决所遇到的问题。
如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。