java实现定时任务

2024-01-02 15:51:07

在 Java 中,你可以使用 java.util.Timer 或者 java.util.concurrent.ScheduledExecutorService 来创建定时任务。这两种方式都能实现你所描述的功能,下面我将分别为你介绍这两种方式的实现。

使用 java.util.Timer:
import java.util.Timer;
import java.util.TimerTask;

public class ScheduledTaskExample {
    public static void main(String[] args) {
        Timer timer = new Timer();
        
        // 创建定时任务
        TimerTask task = new TimerTask() {
            @Override
            public void run() {
                // 执行发送方法
                sendSMS();
            }
        };
        
        // 设置定时任务的执行时间为指定时间
        timer.schedule(task, yourTime);
    }
    
    private static void sendSMS() {
        // 实现发送短信的逻辑
    }
}

在上述代码中,我们首先创建一个 Timer 对象,然后创建一个 TimerTask 对象,在 TimerTask 的 run() 方法中实现发送短信的逻辑。通过调用 timer.schedule(task, yourTime) 方法,我们可以设置定时任务的执行时间为指定的时间。

使用 java.util.concurrent.ScheduledExecutorService:
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;

public class ScheduledTaskExample {
    public static void main(String[] args) {
        ScheduledExecutorService executorService = Executors.newSingleThreadScheduledExecutor();
        
        // 创建定时任务
        Runnable task = () -> {
            // 执行发送方法
            sendSMS();
        };
        
        // 设置定时任务的执行时间为指定时间
        executorService.schedule(task, yourTime, TimeUnit.MILLISECONDS);
    }
    
    private static void sendSMS() {
        // 实现发送短信的逻辑
    }
}

文章来源:https://blog.csdn.net/weixin_44060488/article/details/135340042
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。