微服务定时任务

@Scheduled 是 Spring Framework 中的一个注解,用于安排方法定期执行或在特定时间点执行。

使用 @Scheduled 注解的方法需要满足以下条件:

  1. 该方法必须是公共的(public)。
  2. 该方法不应该返回任何值,或者返回一个可以忽略的值。
  3. 该方法不应该抛出任何异常。

@Configuration //1.主要用于标记配置类,兼备Component的效果。

@EnableScheduling // 2.开启定时任务

java 复制代码
@RestController
@RequestMapping("/administrator")
@Configuration      //1.主要用于标记配置类,兼备Component的效果。
@EnableScheduling   // 2.开启定时任务
//@Component
public class UserConlleter {
    @Resource
    private Userservise userservise;
    @Resource
    private UserMapper userMapper;
    @Resource
    private JwtProperTies jwtProperTies;
    @Resource
    private HttpServletRequest httpServletRequest;

    //生成随机邀请码用于注册
    @PostMapping("Invitationcode/{id}")
    private BaseResult<String> getCode(@PathVariable Integer id){
        String code = CodeUtil.toSerialCode(id);
        //设置权限码
        Administrator administrator = userMapper.selectById(id);
        administrator.setCode(code);
        userservise.updateById(administrator);
        return BaseResult.ok("请求成功",code);
    }

    //30分钟刷新校验码
    @Scheduled(fixedRate = 300000)
    @GetMapping("updateCode")
    private void updateCode(){
        List<Administrator> administratorList = userservise.list();
        for (Administrator administrator:administratorList){
            //获取code
            BaseResult<String> code = getCode(administrator.getAid());
            //设置校验码
            administrator.setCode(code.getData());
            //更新
            userservise.updateById(administrator);
        }
    }
}
相关推荐
xiaoye370836 分钟前
Java 自动装箱 / 拆箱 原理详解
java·开发语言
YDS8292 小时前
黑马点评 —— 分布式锁详解加源码剖析
java·spring boot·redis·分布式
迷藏4942 小时前
**发散创新:基于 Rust的开源权限管理系统设计与实战**在现代软件架构中,**权限控制**早已不
java·开发语言·rust·开源
升鲜宝供应链及收银系统源代码服务3 小时前
《IntelliJ + Claude Code + Gemini + ChatGPT 实战配置手册升鲜宝》
java·前端·数据库·chatgpt·供应链系统·生鲜配送
daidaidaiyu3 小时前
Nacos实例一则及其源码环境搭建
java·spring
小江的记录本3 小时前
【Redis】Redis全方位知识体系(附《Redis常用命令速查表(完整版)》)
java·数据库·redis·后端·python·spring·缓存
摇滚侠3 小时前
Java 项目《谷粒商城-1》架构师级Java 项目实战,对标阿里 P6-P7,全网最强,实操版本
java·开发语言
zihao_tom4 小时前
Spring Boot(快速上手)
java·spring boot·后端
hua872224 小时前
SpringSecurity之跨域
java
小王不爱笑1324 小时前
G1 GC 的核心基础:Region 模型的补充细节
java·jvm·算法