恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

黑马苍穹外卖笔记day10

  • 首页
  • 资讯中心
  • /
  • 黑马苍穹外卖笔记day10

相关资讯

【非标自动化】3、AutoShop快速理解(软件介绍) 2026/8/25 16:35:08
Visual Components 4.10 机器人外部TCP通讯仿真:打通虚拟调试与物理部署的关键桥梁 2026/8/25 16:30:07
基于DeepSeek大模型的实时视频字幕翻译工具搭建指南 2026/8/25 16:30:07

最新资讯

产品体验赋能框架:从设计系统到UI组件库的工程化实践
从信息过载到知识内化:构建个人知识管理系统的实践指南
本地AI桌面助手:离线运行、隐私安全、零成本的高效工作流中枢
0824LAMP项目实战:部署WordPress博客平台小白教程
IntelliJ IDEA 安装与配置全指南:从社区版到终极版的合规使用方案
OpenClaw消息工具:统一消息中枢的设计原理与实战应用

今日推荐

三步把QQ空间历史说说导出到本地:GetQzonehistory 极简指南
洛谷 P7912:[CSP-J 2021 T4] 小熊的果篮 ← 双向链表
Transformers.js 网页端图像抠图实战:零后端 3 行代码返回透明 PNG

本周热门

Nextcloud 桌面客户端:把同步交给它,你只管改文件
如何将 HTML 转成 Word 文档且格式不丢失?html-to-docx 使用教程
Anki 批量操作卡片完整指南:一次搞定上千张,不再逐张修改

本月精选

如何用DamaiHelper实现演唱会门票的智能自动化抢购:完整技术解决方案指南
第4篇:59 倍性能差距的索引瓶颈定位——一次教科书级的全表扫描调优
终极歌词批量下载神器:5分钟解决离线音乐库歌词同步难题

黑马苍穹外卖笔记day10

发布时间:2026/8/25 16:35:08
黑马苍穹外卖笔记day10 订单状态定时处理、来单提醒和客户催单Spring TaskSpring Task是Spring框架提供的任务调度工具可以按照约定的时间自动执行某个代码逻辑。应用场景特别广泛只要是需要定制处理的场景都可以使用Spring Taskcron表达式cron表达式其实就是一个字符串通过cron表达式可以定义任务触发的时间规则构成分为6或7个域由空格分隔开每个域代表一个含义每个域的含义分别为秒分钟小时日月周年(可选)可以使用cron表达式在线生成器按照需求来生成cron表达式Cron表达式规则L代表最后一天用于月和周字段其中周字段中使用L还可以指定每月的最后一个星期几比如1L就是最后一个星期一Spring Task使用步骤导入maven坐标spring-context启动类添加注解EnableScheduling开启任务调度自定义定时任务类订单状态定时处理需求分析用户下单后可能存在的情况下单后未支付订单一直处于待支付状态用户收货后管理端未点击完成按钮订单一直处于派送中状态对于上面两种情况需要通过定时任务来修改订单状态具体逻辑为通过定时任务每分钟检查一次是否存在支付超时订单(下单后超过15分钟仍未支付则判定为支付超时订单)如果存在则修改订单状态为已取消通过定时任务每天凌晨一点检查一次是否存在派送中的订单如果存在则修改订单状态为已完成代码开发创建一个自定义任务类Task/OrderTask,用来存放自动处理订单的方法处理超时未支付订单每一分钟触发一次需要先利用OrderMapper从数据库中查询到超时订单列表然后将超时订单的状态更新为已取消并添加取消原因和取消时间处理超时配送中订单每天凌晨1点触发一次需要先利用OrderMapper从数据库中获取超时配送中订单列表然后将状态更新为已完成OrderMapper接口新增一个方法用来通过状态和时间获取到所有超时订单的列表WebSocketWebSocket是基于TCP的一种新的网络协议。它实现了浏览器与服务器全双工通信--浏览器和服务器只需要完成一次握手两者之间就可以创建持久性的连接并进行双向数据传输。全双工通信模式Http协议和WebSocket协议对比HTTP是短连接WebSocket是长连接HTTP通信是单向的基于请求响应模式WebSocket支持双向通信HTTP和WebSocket底层都是TCP连接应用场景视频弹幕网页聊天体育实况更新股票基金报价实时更新后端WebSocketServer示例程序(部分)使用map来存储会话对象一个键值对对应一个会话WebSocket配置类来单提醒需求分析用户下单并且支付成功后需要第一时间通知外卖商家通知的形式有以下两种语音播报弹出提示框设计通过WebSocket实现管理端页面和服务端保持长连接状态当客户支付后调用WebSocket的相关API实现服务端向客户端推送消息客户端浏览器解析服务端推送的消息判断是来单提醒还是客户催单进行相应的消息提示和语音播报约定服务端发送给客户端浏览器的数据格式为JSON字段包括type,orderId,contenttype为消息类型1为来单提醒2为客户催单orderId为订单idcontent为消息内容在苍穹外卖前端代码中已经实现了WebSocket客户端的连接代码当前端登录时会向服务端建立连接问题为什么前端的请求url中只有localhost没有端口号8080也能连接成功呢答因为前端发送的请求需要经过nginx的反向代理转发后到达后端而nginx的配置文件中已经写好了这种情况前端使用WebSocket形式的url时自动转发到localhost:8080端口代码开发原视频将WebSocketServer注入到OrderServiceImpl类中并在支付成功paySuccess()方法里调用WebSocketServer里面的sendToAllClient()方法来向前端发送信息由于sendToAllClient()方法的形参是字符串则需要将需要传递的信息封装为JSON字符串来进行传递改进由于跳过了微信支付的步骤则在下单过程中不会调用paySuccess()方法我们需要在payment()方法中调用WebSocketServer里面的sendToAllClient()方法来向前端发送信息客户催单需求分析用户在小程序中点击催单按钮后需要第一时间通知外卖商家。通知的形式有如下两种语音播报弹出提示框设计通过WebSocket实现管理端页面和服务端保持长连接状态当用户点击催单按钮后调用WebSocket的相关API实现服务端向客户端推送消息客户端浏览器解析服务端推送的消息判断是来单提醒还是客户催单进行相应的消息提示和语音播报约定服务端发送给客户端浏览器的数据格式为JSON字段包括typeorderIdcontenttype为消息类型1为来单提醒2为客户催单orderId为订单idcontent为消息内容

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号