背景:当我们登录注册过的网站时,右上角一般有个“消息”和小红点的提示,表示我们有新的未读消息,我们可以点击小红点接下来详细聊聊它的实现。

常见的功能也就如下几种:

针对用户:未读消息提醒、查看消息、删除消息,标记为已读

针对系统管理员:新增消息、修改消息内容、删除消息、给用户发送消息

简单的说就是围绕数据库表的一系列操作--CRUD,因此只要设计好底层的消息表,就成功了一大半。

由于该功能在大部分项目中都有涉及,因此需要根据实际的业务需求来设计。通常消息可分为两种类型:系统消息(给所有用户发送的,例如:系统更新xxx),用户消息(跟用户相关的,比如私信、评论等)。由于系统消息一般是给所有用户发送,其实这一点在实际业务中是没有必要的,很多系统用户注册后再也没有登录,其实是没有必要的,如果这样的用户数量很大的情况下,是非常耗内存的,比较好的做法是只给登录的用户发系统消息。而对于用户消息,应该是动态的,例如csdn 上有用户评论、私信时就要往数据表添加一条记录,在相应的查询窗口显示出来。

在我的项目实现中设计了两张数据库表:用户消息表、系统消息表

用户消息表记录所有用户的消息(包括用户收到的系统消息);系统消息表记录管理员添加的系统消息(该表相比用户消息表记录非常少)。

1.当用户登录时,需要给其发送新的系统消息;可以根据系统消息表和用户消息表做差集,将新的系统消息添加进用户消息表中。

2. 针对不同的用户消息类型,可以设计不用的消息模板,在触发时只需要传入相应的参数即可。

实现效果:

网站里的消息提醒是怎么实现的相关推荐

  1. java如何实现广告弹窗,WPF实现消息提醒(广告弹窗)

    原文:WPF实现消息提醒(广告弹窗) 1.先上效果图: 2.1t提示框界面. 主窗口界面没什么内容,就放了一个触发按钮.先绘制通知窗口(一个关闭按钮,俩个文本控件),可以设置下ResizeMode=& ...

  2. 多种消息提醒系统的设计模式、实现方案(附功能截图+表结构)

    网站需要增加3种消息提醒系统.需要实现的功能如下: 1.评论提醒. 实现功能 他人回复自己后,右上角自动提醒"未阅读的新消息"的数量. 点击后,清空新消息的提示. 思路 这个是最简 ...

  3. 易班自动打卡+钉钉机器人消息提醒

    (一)声明 本文仅供学习交流使用,如有发热.感冒.咳嗽请及时根据当地疫情防控办法及时上报 (二)需求 首先,我双手支持和配合学校相关疫情防控政策. 其次,每天重复劳动让我们软件专业情何以堪.说干就干, ...

  4. WEB消息提醒实现之二 实现方式-Jquery Ajax长轮询

    #Jquery Ajax长轮询 ##原理 Jquery Ajax长轮询的原理主要是,前台客户端发送ajax请求到服务器,服务器接收到请求之后会保持住连接,直到有新消息才返回响应信息并关闭连接,客户端处 ...

  5. iOS: 教你给UI控件添加Badge(消息提醒小圆点)

    PPBadgeView 1.前言 最近项目的一个需求是在UIView, UITabBarItem, UIBarButtonItem 这三种类型的控件上添加消息提醒小圆点(Badge),一开始找了一个星 ...

  6. 用 Telegram bot 搭个消息提醒服务

    这是「进击的Coder」的第 645 篇技术分享 作者:刘志军 来源:Python 之禅 " 阅读本文大概需要 6 分钟. " 最近用 Telegram 时间比较多 对开发者来说, ...

  7. 在Python应用中Telegram 机器人搭建消息提醒

    推荐好文: ①程序员用Python爬虫做副业半个月就赚了3W ②程序员别瞎学,这几门语言要被淘汰了- 对开发者来说,Telgram最吸引人的地方估计是 Telgram bot,你可以在建个机器人来做些 ...

  8. 从qq服务器删除误收邮件,QQ邮箱撤回时显示撤回失败,对方已读 收件箱里的消息却是对方已阅读或已删除 这种情况下邮件有没有被删除...

    QQ邮箱撤回时显示撤回失败,对方已读 收件箱里的消息却是对方已阅读或已删除 这种情况下邮件有没有被删除以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容 ...

  9. python自动推送消息_使用Python制作自动推送微信消息提醒的备忘录功能

    日常工作生活中,事情一多,就会忘记一些该做未做的事情.即使有时候把事情记录在了小本本上或者手机.电脑端备忘录上,也总会有查看不及时,导致错过的尴尬.如果有一款小工具,可以及时提醒,而不用再主动去查备忘 ...

最新文章

  1. 如何使用GIST+LIBLINEAR分类器提取CIFAR-10 dataset数据集中图像特征,并用测试数据进行实验
  2. php显示表格,php – 显示所有表格行
  3. python 上传文件下载图片
  4. 有了JSON.stringify(),处理json将变得更简单!!
  5. 信息学奥赛一本通C++语言——1026:空格分隔输出
  6. 编译安装sqlite-3.6.20【原创】
  7. apache 配置 wss websocket打开握手超时_「Web应用架构」WebSocket介绍和WebSocket API
  8. 初学FineReport(二)
  9. Runtime底层原理探究(二) --- 消息发送机制(慢速查找)
  10. Spring IOP 面向切面编程
  11. 可用性测试启发式评估十条原则介绍
  12. 好程序员大数据入门学习之Hadoop技术优缺点
  13. php实现新闻管理系统,PHP基础示范:用PHP+Mysql编写简易新闻管理系统_mysql
  14. c3p0连接池配置说明
  15. python自动按键脚本
  16. 设计一个雇员Employee类
  17. 【PHP】PHP与Web界面交互
  18. Basketball Dribbling
  19. api与密度转换公式_API重度和密度换算公式.doc
  20. JDBC通过Statement执行查询操作

热门文章

  1. 北大工学院计算机考研,北京大学(北大)工学院工业设计工程高分学姐考研经验分享...
  2. 影视解说短视频制作教程,从养号到发布,可参考一下
  3. 文明6游戏 linux,《文明6》正式支持Linux/SteamOS 但不支持Intel核显和A卡
  4. OA系统如何实现严谨的费用报销流程
  5. RT-Thread 内核学习 (十三)邮箱的使用
  6. NX确实是SD卡烧录好之后直接插进卡槽,上电后直接使用,不需要任何其他设置操作。
  7. [转]程序员神级跳槽攻略:什么时候该跳?做什么准备?到哪里找工作?
  8. 小蝌蚪安家 bjfu 1143 广度优先遍历
  9. 博客园是一个不错的学习交流的网站
  10. ASP.NET 项目发布到IIS上报:HTTP 错误 403.14 - Forbidden 错误的解决方案