java怎么实现组播
发表于:2024-09-25 作者:千家信息网编辑
千家信息网最后更新 2024年09月25日,本篇内容主要讲解"java怎么实现组播",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"java怎么实现组播"吧!MulticastSocket multic
千家信息网最后更新 2024年09月25日java怎么实现组播
本篇内容主要讲解"java怎么实现组播",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"java怎么实现组播"吧!
MulticastSocket multicastSocket;@FXMLButton btnmuticast,btnmuticaststop;public void btnmuticastOnMouseClicked(MouseEvent event){try {multicastSocket = new MulticastSocket(3001); multicastSocket.setInterface(InetAddress.getByName("192.168.1.101")); InetAddress multiaddr = InetAddress.getByName("224.26.83.1"); multicastSocket.joinGroup(multiaddr); multicastSocket.setTimeToLive(4); byte[] buff = "QQ".getBytes(); DatagramPacket datagramPacket = new DatagramPacket(buff,buff.length,multiaddr,3001); multicastSocket.send(datagramPacket); logger.info("btnmuticastOnMouseClicked"); } catch (IOException e) { e.printStackTrace(); }}public void bbtnmuticaststopOnMouseClicked(MouseEvent event){if((multicastSocket!= null) && (multicastSocket.isConnected())) {logger.info("bbtnmuticaststopOnMouseClicked"); multicastSocket.close(); }}
接收端:
public class MulticastReceive { public static void main(String[] args) throws Exception { listener(); } public static void listener() throws Exception{ //组播地址 InetAddress group = InetAddress.getByName("224.0.0.1"); 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) { } } } }}
发送端:
public class MulticastSender { public static void server() throws Exception{ InetAddress group = InetAddress.getByName("224.0.0.1");//组播地址 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); TimeUnit.SECONDS.sleep(1); } } 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(); }}
到此,相信大家对"java怎么实现组播"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
数据
内容
地址
时间
学习
实用
更深
兴趣
大小
套接字
实用性
实际
操作简单
方法
更多
朋友
缓冲区
网站
频道
查询
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数码兽数据库
分布式存储的磁盘来自于服务器
神州数码服务器进bios密码
网络技术社团个人介绍
方舟加入服务器提示网络错误信息
NGA数据库技术路线
邓超网络安全
国防军工网络安全
阿里云数据库主从
阿里云服务器机器码怎么获取
足球欧赔数据库
软件开发过程中用到什么数据结构
郑州数字化法治文化展馆软件开发
数字科技互联网大数据商务
工业互联网 网宿科技
创业基础软件开发
建网站用不用买云数据库
OA软件开发报价方案模板
比邻下载软件开发
软件开发海报
原神的官方服务器叫什么
2018上半网络安全报告
各地服务器数量排行榜
世界中医药数据库
鹤壁软件开发平均价格
新田app软件开发公司
网咖网络技术员
软件开发部赏罚制度
新版矿产资源储量数据库
上市公司网络安全吗