问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

java 如何设定时间执行程序

发布网友 发布时间:2022-04-23 14:10

我来回答

3个回答

热心网友 时间:2022-05-05 01:29

用Timer可以实现~~
Timer的schele方法可以指定第一次运行的时刻,和重复间隔
具体可以参考API
timer.schele(task, firstTime, period)
指定firstTime为21:00:00,period为一天的毫秒数24*3600*1000就成了。。

或者可以自己写个线程,放个while循环,每分钟检查一次,如果到时间了就执行任务,如果没到就sleep一分钟。。当然,这种方法比较土。。

更复杂点的可以借助现有的包,比如quartz,有兴趣可以研究下~~

热心网友 时间:2022-05-05 02:47

import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;

public class Test {
public static void main(String[] args) {
//timer1();
timer2();
//timer3();
//timer4();
}

// 第一种方法:设定指定任务task在指定时间time执行 schele(TimerTask task, Date time)
public static void timer1() {
Timer timer = new Timer();
timer.schele(new TimerTask() {
public void run() {
System.out.println("-------设定要指定任务--------");
}
}, 2000);// 设定指定的时间time,此处为2000毫秒
}

// 第二种方法:设定指定任务task在指定延迟delay后进行固定延迟peroid的执行
// schele(TimerTask task, long delay, long period)
public static void timer2() {
Timer timer = new Timer();
timer.schele(new TimerTask() {
public void run() {
System.out.println("-------设定要指定任务--------");
}
}, 1000, 1000);
}

// 第三种方法:设定指定任务task在指定延迟delay后进行固定频率peroid的执行。
// scheleAtFixedRate(TimerTask task, long delay, long period)
public static void timer3() {
Timer timer = new Timer();
timer.scheleAtFixedRate(new TimerTask() {
public void run() {
System.out.println("-------设定要指定任务--------");
}
}, 1000, 2000);
}

// 第四种方法:安排指定的任务task在指定的时间firstTime开始进行重复的固定速率period执行.
// Timer.scheleAtFixedRate(TimerTask task,Date firstTime,long period)
public static void timer4() {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 12); // 控制时
calendar.set(Calendar.MINUTE, 0); // 控制分
calendar.set(Calendar.SECOND, 0); // 控制秒

Date time = calendar.getTime(); // 得出执行任务的时间,此处为今天的12:00:00

Timer timer = new Timer();
timer.scheleAtFixedRate(new TimerTask() {
public void run() {
System.out.println("-------设定要指定任务--------");
}
}, time, 1000 * 60 * 60 * 24);// 这里设定将延时每天固定执行
}
}

热心网友 时间:2022-05-05 04:22

使用Java设定时间执行程序,需要用到定时器。
使用定时器可以用timmer类;
或者使用spring的注解@schele来设置定时器。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我用耳机玩爱唱久久怎么唱出来的不响? 电脑ktv点歌软件有哪些电脑用什么点歌软件比较好 更换变速箱油后,汽车刹车和起步时底盘常有嘎啦嘎啦的异响是什么原因... 格兰仕空调口碑怎么样 格兰仕空调的优缺点有哪些? 格兰仕空调怎么样?质量好吗? 什么是PNC金融服务集团 挖出蛇是好事还是坏事? 微信换行怎么换到下一行 微信如何将自己的位置定位发绐别人 浙江工商大学怎么样?要多少分?好不好? 浙江工商大学怎么样,要求不高,能上就行 如何检测一个JAVA程序的运行时间 浙江工商大学MBA是不是第一志愿优先 java程序中日期计算 浙江工商大学好不好啊??? java程序控制台输出程序运行时间 浙江工商大学杭州商学院应该是被国家承认的吧,不会是野鸡大学吧! 一个人完成一个简单的java程序平均要用多长时间? 杭州工商大学算名牌大学吗 java程序:获取当前的系统时间 浙江工商大学和浙江工商大学杭州商学院什么关系有什么不同 怎样为JAVA应用程序设置时间区 有一个Java程序,我想知道它的运行时间,怎样把代码加进去啊 浙江工商大学是不是省部共建大学 网络直播答题app需要什么执照资质? java 如何设定时间执行程序? 浙江工商大学杭州商学院是不是独立学院? java 怎么计算程序运行的时间 浙江工商大学mpacc好不好 java 如何设定时间执行程序 浙江工商大学杭州商学院怎么样?好不好? JAVA计算时间程序 JAVA计算时间程序 如何得到java程序运行花了多少时间 如何得到java程序运行花了多少时间 JAVA 获取一段程序运行时间 JAVA 获取一段程序运行时间 JAVA程序运行时间长短与哪些因素有关。 JAVA程序运行时间长短与哪些因素有关。 怎么控制java中主程序(main进程)的运行时间 怎么控制java中主程序(main进程)的运行时间 如何计算程序运行时间JAVA 如何计算程序运行时间JAVA 平安银行是十大银行吗? 平安银行是正规的银行吗?? 平安银行在什么位置? 农村信用社的网上银行的用户名和密码是什么? 登录农村信用社手机银行时,用户名应该填什么? 农村信用社手机银行,用户名填什么