石英依赖Maven
<dependency>
<groupId>quartz</groupId>
<artifactId>quartz</artifactId>
<version>1.5.2</version>
</dependency>
**使用这个版本是因为服务器运行Java1.4。quartz的最新版本在运行app**时产生了错误
我尝试在周一到周五的凌晨1点运行一次cron表达式。(0 0 1?*周一至周五)
package com.everis.centers;
import java.util.TimeZone;
import org.quartz.CronTrigger;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.SchedulerFactory;
import org.quartz.impl.StdSchedulerFactory;
import com.everis.centers.job.ExecuteJob;
public class ExportsApplication {
private static final String PERIOD = "0 0 1 ? * MON-FRI";
private static final String PERIOD_2 = "0 0 0 ? * * *";
public static void main(String[] args) {
try {
SchedulerFactory sf = new StdSchedulerFactory();
Scheduler scheduler = sf.getScheduler();
JobDetail job = new JobDetail("exportJob", "vj1", ExecuteJob.class);
CronTrigger ct = new CronTrigger("exportTrigger", "vt1", PERIOD);
ct.setTimeZone(TimeZone.getTimeZone("America/Sao_Paulo"));
scheduler.scheduleJob(job, ct);
scheduler.start();
} catch (Exception e) {
e.printStackTrace();
}
}
}
OBS
我意识到,当达到执行时间时,它将在循环中执行。也就是说,如果我设置为从凌晨1点开始运行,它将在循环中执行。而不是跑一次,等第二天。
从这里,您可以理解Cron表达式中每个值的意义。如果您需要每天12am运行作业,请尝试使用以下表达式0 0 0****
。这将每00:00
小时每天运行一次作业。如果您想了解使用?
的重要性,可以在这里参考以下答案
如果你有任何问题请告诉我。
您可以尝试使用UNIX风格的cron(不支持秒)的Crontab。如果还需要指定秒数,可以引用这个。
我使用FFMPEG创建视频缩略图, 我已经下载了FFMPEG(FFMPEG-2.4.2.tar.bz2)并安装在服务器上。 位于 /usr/bin/ffmpeg 并在以下代码中使用: 但是这个命令没有像我预期的那样工作... 问题是我们上传视频时未创建视频缩略图。 任何帮助很大的赞赏
如何在生产环境中将hazelcast服务器作为linux服务运行? java-server-cp hazelcast。jar com。黑兹卡斯特。例子。StartServer StartServer运行带有输出到std终端的服务器,将其作为linux服务运行并将日志写入文件的最简单方法是什么 我必须将其设置为EC2实例中的服务并将其捆绑。当EC2自动缩放启动实例时,hazelcast服务器将启动并
如果我创建 cronjob 以每 2:30 运行一次命令会运行吗?(这意味着,我的 cron 将在每小时 90 分钟后运行一次。 命令如:30*/2***/command/xxx= 请帮帮忙?
问题内容: 我每天如何每六个小时运行一次命令?试过这不起作用: 问题答案: 您忘记了,并且您有太多字段,这是您需要关心的时刻 这意味着每6小时从0开始,即在0、6、12和18小时,您可以将其写为
我们知道,使用“@IP:端口”或“@@IP:端口”的格式可以把日志发送到远程主机上,那么这么做有什么意义吗? 假设我需要管理几十台服务器,那么我每天的重要工作就是查看这些服务器的日志,可是每台服务器单独登录,并且查看日志非常烦琐,我可以把几十台服务器的日志集中到一台日志服务器上吗?这样我每天只要登录这台日志服务器,就可以查看所有服务器的日志,要方便得多。 如何实现日志服务器的功能呢?其实并不难,不
我使用这段代码通过JAVA运行简单的TCP服务器,并使用Socket协议android应用程序作为客户端。问题是,当客户端连接时,我会发送消息,服务器端什么都不做,直到我断开客户端的连接,之后会出现消息。我认为在while((inputLine=in.readLine())!=空)