java定时器每一分钟执行一次(java定时执行问题: 我想让一个Java代码在每小时的第25分钟执行一次的,这个怎么实现)

:暂无数据 2026-10-10 08:50:08 :0

java定时器每一分钟执行一次(java定时执行问题: 我想让一个Java代码在每小时的第25分钟执行一次的,这个怎么实现)

大家好,今天小编来为大家解答以下的问题,关于java定时器每一分钟执行一次,java定时执行问题: 我想让一个Java代码在每小时的第25分钟执行一次的,这个怎么实现这个很多人还不知道,现在让我们一起来看看吧!

本文目录

java定时执行问题: 我想让一个Java代码在每小时的第25分钟执行一次的,这个怎么实现

用spring quartz
public class MyJob{
//这里如果你定义实例变量,可用spring依赖注入,例如
private String job;
public void setJob(String job){
this.job = job;
}
//你要执行的操作
public void execute(){
}
}
spring 配置文件
beans-config.xml
《?xml version="1.0" encoding="UTF-8"?》
***隐藏网址***
***隐藏网址***
***隐藏网址***
***隐藏网址***
《bean id = "myJob" class="MyJob"》

《!--如果有注入属性在这里写 《property name = "job" value="hihi"》《/property》 --》
《/bean》
《bean id = "myjobDetail" class = "org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean"》
《property name="targetObject" ref="myJob"》
《/property》
《property name="targetMethod" value="execute"》《/property》
《/bean》
《bean id ="triggerBean" class="org.springframework.scheduling.quartz.CronTriggerBean"》
《property name="jobDetail" ref="myjobDetail"/》
《!-- 秒 分 小时 天 月 年--》
《property name="cronExpression" value="0 25 * * * ?"/》
《/bean》

《bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"》
《property name="triggers"》
《list》《ref bean = "triggerBean"/》《/list》
《/property》
《/bean》
《/beans》
在主类中读取定义文件,任务计划自动运行。
public class Test(){
public void static main(String args){
ApplicationContext context = new ClassPathXmlApplicationContext("beans-config.xml");
}
}
将配置文件放在该项目的classpath下,一般你放在src目录下即可。也可以自己创建路径放置,在项目的.classpath中可配置下此路径。
最后导入spring的jar包就可以了。

怎样用java做个定时器,每个星期一中午12点整执行doXX这一动作越详细越好.用监听哥跪谢!

主类:
package tiwen4; import java.util.Calendar; import java.util.Timer; public class quartz { public static void main(String args) { try{ Calendar cal = Calendar.getInstance();//设置定时时间 cal.add(Calendar.DATE, 0);//表示从今天的12点开始跑起来,如果当前时间超过12点会马上跑一次,否则等12点再跑第一次 cal.set(Calendar.HOUR_OF_DAY, 12);//24小时制的,12就是中午12点 cal.set(Calendar.MINUTE, 0);//分 cal.set(Calendar.SECOND, 0);//秒 Timer processTimer = new Timer(); processTimer.scheduleAtFixedRate(new ProcessClass(), cal.getTime(), 86400000);//86400000是24小时,即24小时跑一次 }catch(Exception e){ e.printStackTrace(); }finally{ } } }
定时器调用的类--我在这里只是输出了一下~你也可以自己加函数:
package tiwen4; import java.util.TimerTask; public class ProcessClass extends TimerTask { @Override public void run() { // TODO Auto-generated method stub System.out.println("输出了哈哈");// } }
我上面用的只是一种方式,其实定时方式有很多的linux和window都有自带的定时器,可以直接调用,也可以用上面所说的quartz包带的框架等等

java中如何控制时间间隔

我们可以使用Timer和TimerTask类在java中实现定时任务,详细说明如下:
1、基础知识
java.util.Timer
一种线程设施,用于安排以后在后台线程中执行的任务。可安排任务执行一次,或者定期重复执行。此类是线程安全的:多个线程可以共享单个 Timer 对象而无需进行外部同步。
java.util.TimerTask
由 Timer 安排为一次执行或重复执行的任务。
2、示例代码
该示例实现这样一个功能,在系统运行期间,每30分钟,系统自动检查连接池中的可用连接数,并输出到日志中。
首先创建一个需要定时执行的任务类,这个任务类需要继承TimerTask,然后重写run()方法,run()方法体中的代码就是定时需要执行的操作,在本demo中,就是获取连接池中当前可用连接数,并输出到日志中,具体实现代码如下:
public class TaskAvailableConnectNumber extends TimerTask {
private Logger log = Logger.getLogger(TaskAvailableConnectNumber.class);
private ConnectionPool pool=ConnectionPool.getInstance();
@Override
publicvoid run() {
log.debug("当前连接池中可用连接数"+pool.getAvailableConnectNumber());
}
}
下面定义一个监听器,负责在应用服务器启动时打开定时器,监听器需要实现ServletContextListener接口,并重写其中的contextInitialized()和contextDestroyed()方法,代码如下:
public class OnLineListener implements ServletContextListener{
private Logger log = Logger.getLogger(OnLineListener.class);
Timer timer = null;
//在应用服务器启动时,会执行该方法
publicvoid contextInitialized(ServletContextEvent arg0) {
//创建一个定时器,用于安排需要定时执行的任务。
timer = new Timer();
//为定时器安排需要定时执行的任务,该任务就是前面创建的任务类TaskAvailableConnectNumber,并指定该任务每30分钟执行一次。
timer.schedule(new TaskAvailableConnectNumber(), 0, 30*60*1000);
log.debug("启动定时器");
}
//应用服务器关闭时,会执行该方法,完成关闭定时器的操作。
public void contextDestroyed(ServletContextEvent arg0) {
if(timer!=null){
timer.cancel();//关闭定时器
log.debug("-----定时器销毁--------");
}
}
}
监听器要想正常运行,需要在web.xml文件中进行配置,配置信息如下:
《!-- 监听器配置开始 --》
《listener》
《listener-class》
cn.sdfi.listen.OnLineListener
《/listener-class》
《/listener》
《!-- 监听器配置结束 --》
以上步骤完成后,一个简单的定时器就算开发完成了。

怎么在java后台,写个定时任务比如,十分钟执行一次接口

对于这样的操作最方便、高效的实现方式就是使用java.util.Timer工具类。
private java.util.Timer timer;//给你标注一下包,到时候别找错了
timer = new Timer(true);
timer.schedule(
new java.util.TimerTask() { public void run()
{ //你要定时执行的功能} }, 0, 30*1000);
第一个参数是要操作的功能,一般匿名内部类,第二个参数是要设定延迟的时间,第三个参
数是周期的设定,每隔多长时间执行该操作。
更详细的内容,自己找API Timer类看看吧

怎么用Java实现定时执行某程序

java中设置定时任务用Timer类可以实现。
  一、延时执行
  首先,我们定义一个类,给它取个名字叫TimeTask,我们的定时任务,就在这个类的main函数里执行。代码如下:
  package test;
  import java.util.Timer;
  public class TimeTask {
  public static void main(String args){
  Timer timer = new Timer();
  timer.schedule(new Task(), 60 * 1000);
  }
  }
  解释一下上面的代码。
  上面的代码实现了这样一个功能,当TimeTask程序启动以后,过一分钟后执行某项任务。很简单吧:先new一个Timer对象,然后调用它的schedule方法,这个方法有四个重载的方法,这里我们用其中一个,
  public void schedule(TimerTask task,long delay)
  首先,第一个参数
  第一个参数就是我们要执行的任务。
  这是一个TimerTask对象,确切点说是一个实现TimerTask的类的对象,因为TimerTask是个抽象类。上面的代码里面,Task就是我们自己定义的实现了TimerTask的类,因为是在同一个包里面,所以没有显性的import进来。Task类的代码如下
  package test;
  import java.util.TimerTask;
  public class Task extends TimerTask {
  public void run(){
  System.out.println("定时任务执行");
  }
  }
  我们的Task必须实现TimerTask的方法run,要执行的任务就在这个run方法里面,这里,我们只让它往控制台打一行字。
  第二个参数
  第二个参数是一个long型的值。这是延迟的时间,就是从程序开始以后,再过多少时间来执行定时任务。这个long型的值是毫秒数,所以前面我们的程序里面,过一分钟后执行用的参数值就是 60 * 1000。
  二、循环执行
  设置定时任务的时候,往往我们需要重复的执行这样任务,每隔一段时间执行一次,而上面的方法是只执行一次的,这样就用到了schedule方法的是另一个重载函数
  public void schedule(TimerTask task,long delay,long period)
  前两个参数就不用说什么了,最后一个参数就是间隔的时间,又是个long型的毫秒数(看来java里涉及到时间的,跟这个long是脱不了干系了),比如我们希望上面的任务从第一次执行后,每个一分钟执行一次,第三个参数值赋60 * 1000就ok了。
  三、指定执行时间
  既然号称是定时任务,我们肯定希望由我们来指定任务指定的时间,显然上面的方法就不中用了,因为我们不知道程序什么时间开始运行,就没办法确定需要延时多少。没关系,schedule四个重载的方法还没用完呢。用下面这个就OK了:
  public void schedule(TimerTask task,Date time)
  比如,我们希望定时任务2006年7月2日0时0分执行,只要给第二个参数传一个时间设置为2006年7月2日0时0分的Date对象就可以了。
  有一种情况是,可能我们的程序启动的时候,已经是2006年7月3日了,这样的话,程序一启动,定时任务就开始执行了。
  schedule最后一个重载的方法是
  public void schedule(TimerTask task,Date firstTime,long period)

java定时器 限制方法调用次数

添加一个静态常量,每当方法被调用,该常量减1,当该常量为0时,调用该方法就直接退出。

java中Time和TimeTask的使用

static int i = 0;
Timer timer = new Timer();
timer.schedule(new MyTask(),1000,30*60*1000);//定义一个定时器,一秒后运行,每隔30分钟运行一次。
public class MyTask extend TimerTask(){
......................................//这是执行的代码
i = i+1;
if(i》=10){
timer.cancel();//关闭定时器
}
}

如何用java实现一个计时器来定时读取和写入数据库急!

Timer time = new Timer(); //定义一个 Timer
//执行方法 里面需要一个类 可以定义一个伪类
//也可以 自己 定义一个类 继承TimerTask这个类
//里面必须实现 run方法
//run方法 里面就写你的 实做 方法
//schedule 方法有很多重载 有很多参数我用最简单的
//给你说明 第2个参数是 说 每隔一定的时间执行一次
//相关说明可以去jdk 帮助文档里面找
time.schedule(new TimerTask() {
public void run() {
int inSertValue{
try{
commection con1=con;
Statement stmt=con1.createStatement();
str="(insert ……)";
……
stmt.close();
} catch() {……}
} } //加到这里就好了!!最好把这样方法封装起来
}
}, 1000);

java计时器一分钟内重复

《html》
《head》
《style》
input{
width:100px;
}
body {
text-align:center;
font-size:12px;
}
《/style》
《script》
function show(obj){
var btn=obj.value;
show2();
if(btn!=’点击开始倒计时’){
clearInterval(s);
}
}
function show2(){
document.getElementById(’btn’).value=60;
s=setInterval(cycle,1000);
}
function cycle(){
if(document.getElementById(’btn’).value《=0){
clearInterval(s);
window.close();
}else{
document.getElementById(’btn’).value-=1;
}
}
《/script》
《/head》
《body 》
《input type="button" name="btn" id="btn" value="点击开始倒计时" onclick="show(this)"》
《br》
《/body》
《/html》

java定时任务没十分钟执行一次,成功就不执行了

题主问的是java定时任务没十分钟执行一次,成功就不执行了是什么原因?是系统故障的问题。
java定时任务没十分钟执行一次,成功就不执行了是系统故障的问题,主要是任务最外面没有用try-catch 捕捉,或者是任务执行时,遇到了Uncaught Exception,导致这个定时任务停止执行了。
java是一种计算机编程语言,拥有跨平台,面向对象,泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发,任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言。

文章分享结束,java定时器每一分钟执行一次和java定时执行问题: 我想让一个Java代码在每小时的第25分钟执行一次的,这个怎么实现的答案你都知道了吗?欢迎再次光临本站哦!

java定时器每一分钟执行一次(java定时执行问题: 我想让一个Java代码在每小时的第25分钟执行一次的,这个怎么实现)

本文编辑:admin

更多文章:


织梦行云泪眼彷徨(织梦行云代词版在那下 大侠)

织梦行云泪眼彷徨(织梦行云代词版在那下 大侠)

这篇文章给大家聊聊关于织梦行云泪眼彷徨,以及织梦行云代词版在那下 大侠对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。

2026年10月10日 07:10

安卓教程 app(安卓如何通知触发启动手机app)

安卓教程 app(安卓如何通知触发启动手机app)

大家好,安卓教程 app相信很多的网友都不是很明白,包括安卓如何通知触发启动手机app也是一样,不过没有关系,接下来就来为大家分享关于安卓教程 app和安卓如何通知触发启动手机app的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我

2026年10月10日 04:00

abap开发工作经历(目前,从事的是ABAP开发的不知道做这个有没有什么前途啊好的话,我会加分的~)

abap开发工作经历(目前,从事的是ABAP开发的不知道做这个有没有什么前途啊好的话,我会加分的~)

大家好,abap开发工作经历相信很多的网友都不是很明白,包括目前,从事的是ABAP开发的不知道做这个有没有什么前途啊好的话,我会加分的~也是一样,不过没有关系,接下来就来为大家分享关于abap开发工作经历和目前,从事的是ABAP开发的不知道

2026年10月10日 01:10

影视特效师需要学什么软件(影视后期制作主要学哪些软件)

影视特效师需要学什么软件(影视后期制作主要学哪些软件)

大家好,影视特效师需要学什么软件相信很多的网友都不是很明白,包括影视后期制作主要学哪些软件也是一样,不过没有关系,接下来就来为大家分享关于影视特效师需要学什么软件和影视后期制作主要学哪些软件的一些知识点,大家可以关注收藏,免得下次来找不到哦

2026年10月10日 00:20

ios系统开发(ios开发是什么 ios开发是指什么呢)

ios系统开发(ios开发是什么 ios开发是指什么呢)

各位老铁们,大家好,今天由我来为大家分享ios系统开发,以及ios开发是什么 ios开发是指什么呢的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

2026年10月9日 23:50

report是什么意思(report是什么意思)

report是什么意思(report是什么意思)

大家好,关于report是什么意思很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于report是什么意思的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

2026年10月9日 23:00

数据库原理及应用视频(什么是数据库列存储,原理是怎样的)

数据库原理及应用视频(什么是数据库列存储,原理是怎样的)

本篇文章给大家谈谈数据库原理及应用视频,以及什么是数据库列存储,原理是怎样的对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

2026年10月9日 22:50

mysql最佳优化完美攻略下载(MySQL数据库性能优化有哪些技巧)

mysql最佳优化完美攻略下载(MySQL数据库性能优化有哪些技巧)

“mysql最佳优化完美攻略下载”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看mysql最佳优化完美攻略下载(MySQL数据库性能优化有哪些技巧)!

2026年10月9日 22:10

源程序 目标程序(高级语言源程序需经( )翻译成目标程序)

源程序 目标程序(高级语言源程序需经( )翻译成目标程序)

大家好,今天小编来为大家解答以下的问题,关于源程序 目标程序,高级语言源程序需经( )翻译成目标程序这个很多人还不知道,现在让我们一起来看看吧!

2026年10月9日 20:40

java经典编程50题(Java程序设计 求50以内的奇数之和,以及50以内的素数)

java经典编程50题(Java程序设计 求50以内的奇数之和,以及50以内的素数)

大家好,如果您还对java经典编程50题不太了解,没有关系,今天就由本站为大家分享java经典编程50题的知识,包括Java程序设计 求50以内的奇数之和,以及50以内的素数的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年10月9日 18:00

最近更新

热门文章

打印机m7400(m7400打印机清零方法)
2026-08-29 07:50:01 浏览:4
acrobat各版本区别(Acrobat XI Pro与 Acrobat PRO DC什么区别)
2026-08-29 22:30:20 浏览:2
联想y510p怎么升级(联想y510p换cpu)
2026-08-17 03:30:04 浏览:2
标签列表