轻量级定时任务,JDK自带Timer

在我们轻量级任务中,并且项目并发不高时,我们不需要使用Quartz,xxjob等框架,直接使用JDK自带的Timer去实现定时任务简单易上手。下面我就为大家介绍一下java项目实战的定时任务Timer,并且在启动类加载就开启定时任务.

    public static void main(String[] args) {
        //Calendar这个技术也是基于java的线程去做的
        //设置第一次更新的时间点
        Calendar calendar = Calendar.getInstance();
        calendar.set(Calendar.HOUR_OF_DAY, 16);//控制小时
      calendar.set(Calendar.MINUTE, 16);//控制分钟,
        calendar.set(Calendar.SECOND, 5);//控制秒,
        //利用java的api Timer来完成一个定时任务
        Timer timer = new Timer();
        TimerTask task=new TimerTask() {
            @Override
            public void run() {
                // 实现自己的定时任务操作
                System.out.println("定时任务!去更新数据库的数据!");

            }
        };
        /*
         * 从第一次发布任务的12:00开始执行任务,每隔(1000 * 60 * 60 * 24)天,定时执行
         * */
        timer.schedule(task, calendar.getTime() , 1000 * 60 * 60 * 24);
    }

上面三个时间参数就是多久开启定时任务,例如我的就是下午4.16分5秒开始执行

timer.schedule(task, calendar.getTime() , 1000...);就是隔多久执行一次

下面是效果图

 

如果你想类加载就启动定时任务可以在main方法上面打上注解

@PostConstruct,他在类加载之前就会给你实例化bean,让你能够启动定时任务

如果对你有帮助,请一健三连,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值