Java QQ项目详细设计之:组操作模块
2023-03-14 22:44:32 时间
好长时间没发博文了,今天再写点,今天写qq软件的组操作模块,由于客户端方面的组操作不需要复杂的逻辑,所以就不写客户端了,只写一下服务器端的组操作响应,好,先写一下伪码:
组操作模块
由于基本的几个组操作有很多相似之处,所以将几个组操作划为一个模块,设计思路如下:
用户发送组操作 信息包,服务器解析出基本数据和命令,判断要进行的组操作是什么操作,然后进行相应的操作,具体设计思路如下:
If(组操作命令为增加组)
{
在users数据库中找到此用户的groupsList表,在此表中添加相应的组
}
Else if(组操作为删除组)
{
1、在users数据库中找到此用户的friendsList表,把相应组的 好友的组属性改为 我的好友 ,即将要删除组中的好友放到我的好友 中,而不是直接将他们删除,
2、在users数据库中找到此用户的groupsList表,在此表中删 除相应的组
}
Else if(组操作为修改组的名称)
{
1、在users数据库中找到此用户的friendsList表,把相应组的 好友的组属性改为 要修改的组名
2、在users数据库中找到此用户的groupsList表,在此表中删 找到相应的组,修改此组的名称为要修改的名称
}
下面是图示:
本系列博文仅提供设计思路,及少量伪码,详细代码:
http://down.51cto.com/data/353289
原文链接:http://wangchangshuai0010.iteye.com/blog/1473024
相关文章
- 为什么Redis单线程能达到百万+QPS?
- 数据库有哪些分类?应该怎样选择?终于有人讲明白了
- MongoDB统一分布式数据源,云数据库支持数据湖和搜索功能
- 为什么我们选择了MongoDB?
- 史上最全Oracle文件损坏处理办法 (附实验步骤)
- 一文带你看透本质—Redis的三种集群方式+穿透与雪崩的预防和解决
- 厉害了!原来Redis是这样集群的
- 神仙打架:PG和MySQL到底哪个更好用?
- 我用对了这些场景下的索引,技术总监夸我棒
- 蚂蚁集团成立数据库独立公司OceanBase,年内将发布重大版本升级
- Redis哨兵原理,我忍你很久了!
- MySQL优化:定位慢查询的两种方法以及使用explain分析SQL
- MySQL 可重复读,差点就让我背上了一个 P0 事故!
- MySQL的死锁系列之锁的类型以及加锁原理
- AI时代下的Redis
- MySQL中,当update修改数据与原数据相同时会再次执行吗?
- Redis你掌握多少了,来个查漏补缺?
- MySQL DBA如何利用strace/pstack/gdb来定位问题
- MongoDB复制集集群原理详解及部署
- 一篇搞懂MySQL 8.0 Clone技术在线搭建主从复制全过程