微服务定时任务

@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);
        }
    }
}
相关推荐
neoooo3 分钟前
🍃Spring Boot 多模块项目中 Parent / BOM / Starter 的正确分工
java·后端·架构
黄金贼贼3 分钟前
2026最新java单元测试json校验器
java·单元测试·json
菜鸟的迷茫4 分钟前
为了防雪崩加了限流,结果入口先挂了
java·后端·架构
荒诞硬汉6 分钟前
数组常见算法
java·数据结构·算法
悟空码字9 分钟前
SpringBoot整合MongoDB,性能提升,优化实践
java·spring boot·后端
1***357717 分钟前
spring loC&DI 详解
java·spring·rpc
独自破碎E18 分钟前
介绍一下Spring AI框架
java·人工智能·spring
黎雁·泠崖23 分钟前
Java入门篇之吃透基础语法(一):注释+关键字+字面量全解析
java·开发语言·intellij-idea·intellij idea
mjhcsp25 分钟前
C++ 后缀树(Suffix Tree):原理、实现与应用全解析
java·开发语言·c++·suffix-tree·后缀树
sin220130 分钟前
Spring事务管理(SpringBoot)
java·spring boot·spring