quartz定时任务-job
1,首先添加对quartz组建的引用 quartz-2.2.3.jar,slf4j-api-1.7.7.jar
https://files.cnblogs.com/files/renjing/quartz.zip
2,新增类实现job接口
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException; public class TestJob implements Job { private static final Logger logger = LogManager.getLogger(TestJob.class); @Override
public void execute(JobExecutionContext arg0) throws JobExecutionException {
logger.debug("TestJob执行啦!");
}
}
3.新增一个Servlet,并且设置为在网站启动的时候自动初始化
import java.util.TimeZone; import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.quartz.CronScheduleBuilder;
import org.quartz.CronTrigger;
import org.quartz.JobBuilder;
import org.quartz.JobDetail;
import org.quartz.Scheduler;
import org.quartz.TriggerBuilder;
import org.quartz.impl.StdSchedulerFactory; //loadOnStartup表示:网站启动的时候自动初始化QuartzInitServlet(即init被调用)
@WebServlet(value = "/QuartzInitServlet", loadOnStartup = 1)
public class QuartzInitServlet extends HttpServlet { private static final Logger logger = LogManager.getLogger(QuartzInitServlet.class);
@Override
public void init() throws ServletException {
super.init(); try
{
Scheduler scheduler = StdSchedulerFactory.getDefaultScheduler();
JobDetail job = JobBuilder.newJob(TestJob.class).build();
CronScheduleBuilder cronScheduleBuilder =
CronScheduleBuilder.cronSchedule("0 0 0/1 * * ? ").inTimeZone(TimeZone.getTimeZone("GMT+08:00"));//每小时执行一次
//CronScheduleBuilder.cronSchedule("10/5 * * * * ? ").inTimeZone(TimeZone.getTimeZone("GMT+08:00"));//从10秒开始,每隔5秒执行一次
//CronScheduleBuilder.cronSchedule("45 53 23 * * ? ").inTimeZone(TimeZone.getTimeZone("GMT+08:00"));//每天23:53:45
//CronScheduleBuilder.dailyAtHourAndMinute(23, 48).inTimeZone(TimeZone.getTimeZone("GMT+08:00"));
CronTrigger trigger = TriggerBuilder.newTrigger().withSchedule(cronScheduleBuilder).build();
scheduler.scheduleJob(job, trigger);
scheduler.start();//不要忘了启动
}
catch(Throwable ex)
{
logger.error("定时任务安排出错",ex);
}
}
}
quartz定时任务-job的更多相关文章
- Quartz定时任务学习(二)web应用/Quartz定时任务学习(三)属性文件和jar
web中使用Quartz 1.首先在web.xml文件中加入 如下内容(根据自己情况设定) 在web.xml中添加QuartzInitializerServlet,Quartz为能够在web应用中使用 ...
- quartz定时任务框架的使用
quartz定时任务时间设置 这些星号由左到右按顺序代表 : * * * * * * * ...
- Quartz定时任务学习(二)web应用
web中使用Quartz 1.首先在web.xml文件中加入 如下内容(根据自己情况设定) 在web.xml中添加QuartzInitializerServlet,Quartz为能够在web应用中使用 ...
- Quartz定时任务使用小记(11月22日)
骤然接触quartz,先从小处着手,why,what,how quartz定时任务: 为什么使用quartz定时任务,以及定时任务在实际应用场景下的特定需求. 1.用户方面的需要,为了提供更好的使用体 ...
- quartz定时任务时间配置
quartz定时任务时间设置描述(2011-03-03 16:23:50)转载▼标签: quartz时间it 分类: 凌乱小记 这些星号由左到右按顺序代表 : * * * ...
- 对quartz定时任务的初步认识
已经好久没有写技术博文了,今天就谈一谈我前两天自学的quartz定时任务吧,我对quartz定时任务的理解,就是可以设定一个时间,然后呢,在这个时间到的时候,去执行业务逻辑,这是我的简单理解,接下来看 ...
- Spring整合Quartz定时任务执行2次,Spring定时任务执行2次
Spring整合Quartz定时任务执行2次,Spring定时任务执行2次 >>>>>>>>>>>>>>>&g ...
- Quartz 定时任务时间设置
转自https://blog.csdn.net/zdx1515888659/article/details/79158169 quartz定时任务时间设置: 这些星号由左到右按顺序代表 : * * * ...
- quartz定时任务及时间设置
quartz 定时任务时间设置1.这些星号由左到右按顺序代表 : * * * * * * * ...
- Spring整合Quartz定时任务 在集群、分布式系统中的应用(Mysql数据库环境)
Spring整合Quartz定时任务 在集群.分布式系统中的应用(Mysql数据库环境) 转载:http://www.cnblogs.com/jiafuwei/p/6145280.html 单个Q ...
随机推荐
- CentOs7 使用iptables防火墙开启关闭端口
CentOs7 使用iptables防火墙开启关闭端口 # 0x01介绍 iptables命令是Linux上常用的防火墙软件,是netfilter项目的一部分iptables文件设置路径:命令:v ...
- [转帖]一文看懂web服务器、应用服务器、web容器、反向代理服务器区别与联系
一文看懂web服务器.应用服务器.web容器.反向代理服务器区别与联系 https://www.cnblogs.com/vipyoumay/p/7455431.html 我们知道,不同肤色的人外貌差别 ...
- SQLSERVER 创建对Oracle数据库的DBlink以及查询使用
1. 与针对oracle数据库一样, 在sqlserver中创建对oracle数据库的dblink 安全性上面也进行定义(貌似不需要跟访问字符串只需要填一个即可) 发现有的版本改注册表不管用 还得修改 ...
- [转帖] 读懂YML文件.. 书买了还没看完...
Copy From https://www.cnblogs.com/CloudMan6/p/8370501.html 读懂 Deployment YAML - 每天5分钟玩转 Docker 容器技 ...
- 金蝶特性配置(超级BOM)
特性配置 特性物料 物料和特性的对应关系 自动新增物料的系统设置 特性物料自动新增 自动新增的特性配置方案 相关表 ICPlan_CharacteristicEntry
- select、poll、epoll之间的区别总结[整理]【转】
转自:http://www.cnblogs.com/Anker/p/3265058.html select,poll,epoll都是IO多路复用的机制.I/O多路复用就通过一种机制,可以监视多个描述符 ...
- 洛谷 P3237 [HNOI2014]米特运输
题面链接 get到新技能当然要来记录一下辣 题意:给一棵树,每个点有一个权值,要求同一个父亲的儿子的权值全部相同,父亲的取值必须是所有儿子的权值和,求最少的修改数量 sol:自己瞎鸡巴yy一下可以发现 ...
- pgm17
这部分讨论决策理论与 PGM 的关系,一个主要的思路就是将决策与 PGM 的 inference 完美的融合在一起. MEU 为了引入决策理论中的 maximum expected utility 原 ...
- pgm15
这部分我们讨论结构学习,也就是 graph 的边我们并不清楚.很自然我们可以用 fully observed 数据来做,但是也可能碰到有 missing data 的情况.一般来说前者是比较常见的.就 ...
- Android 访问 Webapi 更新UI
首先,写一个访问webapi的工具类 import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import or ...