java定时器 每天12点 固定执行一个方法
2个回答
展开全部
可以使用timer的schedule方法实现定时任务,例如:把下面的new Date()参数换为你要定时的时间,创建一个线程执行你的任务
public class 定时 {
public static void main(String[] args) {
Timer timer = new Timer();
timer.schedule(new myTest(), new Date());
}
}
class myTest extends TimerTask {
@Override
public void run() {
//你要执行的任务
}
System.out.println(hour + ":" + fen + ":" + sec + ":" + i);
}
修改一下就可以了
public class 定时 {
public static void main(String[] args) {
Timer timer = new Timer();
timer.schedule(new myTest(), new Date());
}
}
class myTest extends TimerTask {
@Override
public void run() {
//你要执行的任务
}
System.out.println(hour + ":" + fen + ":" + sec + ":" + i);
}
修改一下就可以了
展开全部
Calendar cal = Calendar.getInstance();
//每天定点执行
cal.set(Calendar.HOUR_OF_DAY,12);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
//执行的内容
}
},cal.getTime(), 24*60*60*1000);
//每天定点执行
cal.set(Calendar.HOUR_OF_DAY,12);
cal.set(Calendar.MINUTE,0);
cal.set(Calendar.SECOND,0);
Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
//执行的内容
}
},cal.getTime(), 24*60*60*1000);
追问
我在一个类里面 有个 run(){
//有我执行的内弄
} 这个定时器是写在哪里的? 我的项目中没有main 方法 只要tomcat 启动 就调用 此方法 我想知道这个定时器写在哪里? 同一个类里面吗?
追答
如果要是web项目,你需要创建一个Servlet,把定时器写在Servlet中,这个Servlet在tomcat启动的时候就执行,这个Servlet不需要被访问
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询