我最近在一个系统中添加一个定时任务。系统中的Quartz已经是搭建好的,而且已经有定时任务在运行了。
我现在添加任务的方法是向表中直接插入数据:
insert into PUB_P_QZ_JOB_DETAILS
values
('job4','DEFAULT','','AutoJob(类名)','1','0','0','1','');
insert into PUB_P_QZ_TRIGGERS
values
('trigger4','DEFAULT','job4','DEFAULT',0,'',100,100,5,'WAITING','CRON',100,0,'',0,'');
insert into PUB_P_QZ_CRON_TRIGGERS
values
('trigger4','DEFAULT','0 30 10 * * ?','Asia/Shanghai');
这样控制任务定时执行的主要的就是corn表达式。
我的表达式是: 0 30 10 * * ?
按照cron表达式来看应该是每天的10点半执行任务,但是实际的执行时间确实每天的22:30.整整延时了10个小时。
请教各位前辈们,有知道这是怎么回事嘛?
是设置原因还是其他的配置问题?
多谢~
5 个解决方案
#1
小弟是初学JAVA者,还请各位前辈们多多指教!
#2
表达式没错,应该是系统读取和执行中间有误解的地方
#3
呵呵,这个问题已经解决了,是SQL中时区的问题。本来是'Asia/Shanghai',
改成‘American/Chicago’时区就可以了!
应该是服务器上的时区问题~
改成‘American/Chicago’时区就可以了!
应该是服务器上的时区问题~
#4
呵呵,看来楼主还是位外国朋友
#5
呵呵,不是外国的,纯种中国人。应该是服务器上的时间有问题~
#1
小弟是初学JAVA者,还请各位前辈们多多指教!
#2
表达式没错,应该是系统读取和执行中间有误解的地方
#3
呵呵,这个问题已经解决了,是SQL中时区的问题。本来是'Asia/Shanghai',
改成‘American/Chicago’时区就可以了!
应该是服务器上的时区问题~
改成‘American/Chicago’时区就可以了!
应该是服务器上的时区问题~
#4
呵呵,看来楼主还是位外国朋友
#5
呵呵,不是外国的,纯种中国人。应该是服务器上的时间有问题~