关于Java中的定时任务

现实开发中,可能会经常使用到定时任务,也有可能会使用不到,在最近的项目开发中,我就使用到了定时任务,那么接下来我来总结一下我所使用的定时任务吧。

项目呢使用的是基本框架也就是SpringBoot+MybatisPlus,那么所使用的定时任务呢也就是SpringBoot自带的定时任务。

万事开头第一步,导入maven包,在最外层的pom.xml中导入如下代码:

  <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.1.RELEASE</version>
    </parent>

    <dependencies>
        <!-- SpringBoot 核心组件 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

那么由于是SpringBoot项目所以需要写一个Boot的启动类,在启动类上加入 @EnableScheduling 这样一个注解,进行全局的扫描,至于启动类上其余的注解就不一一赘述的哈。

接下来建立一个新的Job类(也就是一个普通的类),在类上面加入@Compant注解以及@Slf4j的注解,前者是方便上述注解能够扫描到当前的定时任务类,后者则是需要打印定时任务启动任务时需要的日志的。

接下来就可以继续写你的业余方法,但是需要在任务方法上写上一个注解 @Scheduled(cron="0 1 0 * * ?"),这个注解是告诉服务器我这个东西什么时候调用,关于这个注解里面的时间怎么填写,接下来会有一个详细的解释。

0 0 1 * * ? 每天1点执行

0 1 0 * * ? 每天零点1分执行一次

0 5/10 1 * * ?  每天1点的5分,15分,25分,35分,45分,55分这几个时间点执行

0 10 1 ? * 1 每周星期天,1点10分执行,1表示的事周天

0 10 1 ?* 1#3 每个月的第三个星期的星期天执行 #号只能出现在星期的位置

那么整个一个定时任务的大的框架就有了,接下来就是自己往业务方法里面写出自己的业务实现逻辑了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值