苍穹外卖day10

一、Spring Task

1. 介绍

是spring框架提供的任务调度工具,可以按照约定的时间自动执行某个代码

2. cron表达式

cron表达式在线生成器:https://cron.qqe2.com/

3. 使用步骤

在类上加注解@Component

在定时任务上加注解@Scheduled(cron="xxx")(函数名和返回值无要求)

二、订单状态定时处理

1. 需求分析

(1)下单后未支付,订单一直处于"支付中"状态

每隔一分钟检查一次订单状态,若15分钟后还是未支付,则取消订单

(2)收货后未点击完成,订单一直处于"派送中"状态

每天的凌晨一点检查订单状态,将"派送中"的订单状态修改为"已完成"

2. 代码开发

创建OrderTask类@Component,注入OrderMapper

处理(1):查数据库,返回超时订单(下单时间<当前时间-15min),改数据库(每分钟执行)

处理(2):查数据库,返回派送中订单(下单时间<当前时间-1h),改数据库(每天1点执行)

OrderMapper:根据订单状态和时间查询

当前时间-15分钟:LocalDataTime.now().plusMinutes(-15)

三、WebSocket

1. 介绍

2. 实现步骤

导入:老师准备好的代码导到项目里

四、来单提醒

1. 需求分析和设计

2. 代码开发

(没写支付功能,写在下单成功后面吧。。)

orderController:封装JSON数据,sendToAll发送给客户端

五、客户催单

1. 需求分析和设计

小程序点击催单,发送请求给服务端,服务端发送信息给浏览器

相关推荐
岁岁种桃花儿1 小时前
Vue组件第六篇:Vue单文件组件
开发语言·前端·javascript·vue.js
陈皮波比茶1 小时前
k8s 快速入门
java·kubelet
朽棘不雕2 小时前
Qt项目代码解释
开发语言·qt
Json____2 小时前
基于 Spring Boot + Vue3 的校园自习室座位预约系统实战
java·管理系统·it学习·wwwoop.com
计算机毕设定制辅导-无忧学长2 小时前
《基于Java的旧物回收管理系统设计与实现》
java·开发语言
“AI国潮设计-小江”2 小时前
【Python/SDXL实战】潮汕国潮IP视觉落地:普宁美食猫IP & 创意甜品设计(附ComfyUI工作流与商用授权思路)
开发语言·人工智能·python·prompt·aigc
彧azz2 小时前
Java学习语法篇:键盘录入
java·笔记·学习
wno7042 小时前
Spring Boot整合MongoDB
spring boot·后端·mongodb
xcl09252 小时前
24小时自助健身房系统开发:从架构设计到落地实践
java·spring boot
sdm0704272 小时前
仿muduo库实现高并发服务器-下
开发语言·网络·c++·多路转接