网络编程____使用java给公司用飞q软件的同事群发消息

来源:互联网 发布:湖南青果软件 张光铎 编辑:程序博客网 时间:2024/04/29 01:50

package cn.udp;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;/** * 模拟: * 使用udp协议给FeiQ发送信息 * @author 小风微灵 * */public class FQSend {        public static void main(String[] args) throws Exception {                System.out.println("发送端!");        //建立UDP服务插座        DatagramSocket send=new DatagramSocket();                //创建发送包        String content=getFQData("哈哈哈,我是神!收到你哦一声啊!");        String content1=getFQData("ip:192.168.9.255" +                                  "port:2425" +                                  "这样就可以群发了,但是不能while循环啊!会出事!");        DatagramPacket packet=new DatagramPacket(content.getBytes(),                                                  content.getBytes().length,                                                 InetAddress.getByName("192.168.1.255"),2425);                //消息 群发:        //InetAddress.getByName("192.168.9.255"),2425                //发送数据包        send.send(packet);    //发送不是阻塞型的!        System.out.println("数据已发送.....");    }        private static String getFQData(String content){                StringBuilder sb = new StringBuilder();          sb.append("1.0:")                                    //版本号            .append(System.currentTimeMillis()+":")            //时间            .append("天使-彦:")                                //发送者            .append("192.168.9.251:")                        //ip            .append("32:")                                    //标识符(信息格式标志)            .append(content);                                //发送的信息            return sb.toString();    }    }



网络编程(学习整理)---3--(Udp)FeiQ实现广播消息群发

1、广播群发消息:

    这里使用的任然是UDP协议,使用方法还是比较简单的!

    我就记录一下需要注意的一些地方(笔记):

    (1)这里是在局域网内,借用FeiQ聊天软件,编写一段程序,实现对局域网内的每一个登录FeiQ的用户广播式的群发消息!

    (2)向一款应用程序发送信息,不是简单的String类型,或者byte[]类型的数据就可以的,一般通信软件都有内置好的接受数据包的格式,作为过滤非法数据!

      也是一种安全性的措施,想想也是应该的!这里FeiQ的接受数据格式为:“版本号:发送时间:发送人:发送者IP:发送数据的类型标识符(默认32:文本字符串:发送的内容)”

    (3)我们向指定的在线用户发送数据包的时候,需要指定的是对方在特定网段内的IP和端口号,但是群发的话,由于接受的对象是所有在线用户,那么使用的是FeiQ软件提供的特定的IP和端口号!这些事内设好的,拿来主义,很简单是不是啊!

 

2、现在贴上测试的例子:

效果图:

以下是代码:

复制代码
 1 package cn.udp; 2  3 import java.net.DatagramPacket; 4 import java.net.DatagramSocket; 5 import java.net.InetAddress; 6  7 /** 8  * 模拟: 9  * 使用udp协议给FeiQ发送信息10  * @author 小风微灵11  *12  */13 public class FQSend {14 15     16     public static void main(String[] args) throws Exception {17         18         System.out.println("发送端!");19         //建立UDP服务插座20         DatagramSocket send=new DatagramSocket();21         22         //创建发送包23         String content=getFQData("哈哈哈,我是神!收到你哦一声啊!");24         String content1=getFQData("ip:192.168.9.255" +25                                   "port:2425" +26                                   "这样就可以群发了,但是不能while循环啊!会出事!");27         DatagramPacket packet=new DatagramPacket(content.getBytes(), 28                                                  content.getBytes().length,29                                                  InetAddress.getByName("192.168.1.255"),2425);30         31         //消息 群发:32         //InetAddress.getByName("192.168.9.255"),242533         34         //发送数据包35         send.send(packet);    //发送不是阻塞型的!36         System.out.println("数据已发送.....");37 38     }39     40     private static String getFQData(String content){41         42         StringBuilder sb = new StringBuilder();43           sb.append("1.0:")                                    //版本号44             .append(System.currentTimeMillis()+":")            //时间45             .append("天使-彦:")                                //发送者46             .append("192.168.9.251:")                        //ip47             .append("32:")                                    //标识符(信息格式标志)48             .append(content);                                //发送的信息    49         return sb.toString();50     }51     52 53 }
复制代码

 

研究技术需要静下心来,一点一点地深究.......
分类: 网络编程
好文要顶关注我收藏该文
小风微灵-彦
关注 - 0
粉丝 - 0
+加关注
0
0
«上一篇:网络编程(学习整理)---2--(Udp)实现简单的控制台聊天室
»下一篇:数据库(学习整理)----1--如何彻底清除系统中Oracle的痕迹(重装Oracle时)
posted @ 2016-07-11 20:52 小风微灵-彦 阅读(386) 评论(0)编辑收藏
刷新评论刷新页面返回顶部
【推荐】50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
【免费】从零开始学编程,开发者专属实验平台免费实践!
阿里云B1
最新IT新闻:
· NASA在使用大数据做什么?相关事务全解析
· IBM改组计算机网络部门 加速向人工智能转型
· Google收购专注解决“老问题”的印度人工智能公司Halli Labs
· 亚马逊智能音箱和苹果贴身近打:二代Echo走高端路线
· 李开复:向死而生的经历让我明白人类如何与人工智能共存
» 更多新闻...
极光推广_0701
最新知识库文章:
· 小printf的故事:什么是真正的程序员?
· 程序员的工作、学习与绩效
· 软件开发为什么很难
· 唱吧DevOps的落地,微服务CI/CD的范本技术解读
· 程序员,如何从平庸走向理想?
» 更多知识库文章...
原创粉丝点击