java定时器quartz
定时器实现
- 一、手动定义一个spring类便于获取注入的类
- 二、定义一个类实现Job类
- 三、编写定时任务工具类
一、手动定义一个spring类便于获取注入的类
@Component
public class SpringUtile implements ApplicationContextAware {private static ApplicationContext applicationContext;@Overridepublic void setApplicationContext(ApplicationContext applicationContextParam) throws BeansException {applicationContext=applicationContextParam;}public static Object getObject(String id) {Object object = null;object = applicationContext.getBean(id);return object;}public static <T> T getObject(Class<T> tClass) {return applicationContext.getBean(tClass);}public static Object getBean(String tClass) {return applicationContext.getBean(tClass);}public <T> T getBean(Class<T> tClass) {return applicationContext.getBean(tClass);}
}
二、定义一个类实现Job类
具体项目可以在对应的service上实现,,也可独立写
public class CpServiceImpl implements ICpService, Job{}
三、编写定时任务工具类
public class zidong {private SchedulerFactory schedulerFactory = null;private Scheduler scheduler = null;public void start() throws SchedulerException {schedulerFactory = new StdSchedulerFactory();scheduler = schedulerFactory.getScheduler();}public void zhengshi() throws SchedulerException {schedulerFactory = new StdSchedulerFactory();scheduler = schedulerFactory.getScheduler();// 1、创建调度器Scheduler// 2、创建JobDetail实例,并与PrintWordsJob类绑定(Job执行内容)JobDetail jobDetail = JobBuilder.newJob(CpServiceImpl.class).usingJobData("jobDetail1", "这个Job用来测试的").withIdentity("job1", "group1").build();// 3、构建Trigger实例,每隔1s执行一次
// Date startDate = new Date();
// startDate.setTime(startDate.getTime() + 5000);
//
// Date endDate = new Date();
// endDate.setTime(startDate.getTime() + 5000);CronTrigger cronTrigger = newTrigger().withIdentity("trigger1", "triggerGroup1").usingJobData("trigger1", "这是jobDetail1的trigger").startNow()//立即生效
// .startAt(startDate)
// .endAt(endDate).withSchedule(cronSchedule("0/1 * * * * ?").withMisfireHandlingInstructionDoNothing()).build();
// CronTrigger cronTrigger = newTrigger().withIdentity("trigger1", "triggerGroup1").withSchedule(cronSchedule("0/1 37 16 6 12 ?")).build();//4、执行scheduler.scheduleJob(jobDetail, cronTrigger);System.out.println("--------scheduler start ! ------------");scheduler.start();System.out.println("--------scheduler shutdown ! ------------");}}
CpServiceImpl类为实现job接口的类。
java定时器quartz相关推荐
- Java定时器quartz停止
Part1 SpringIOC 学习Spring最重要的无非是Spring IOC以及Spring AOP,首先咱们把Spring IOC吃透,以下内容将截图展示. Spring IOC主要学习内容分 ...
- java实现quartz定时器_java定时器quartz实现解析
上次我们了解过了timer的有关内容,这次来了解下另外一个定时器quartz的实现,快来看看吧. 1.首先,在pom.xml中进行最重要也是基础的导包环节 org.quartz-scheduler q ...
- java定时器任务中获取request对象 @Scheduled 获取request 对象 quartz中获取request对象
java定时器任务中获取request对象 @Scheduled 获取request 对象 quartz中获取request对象 一.问题描述 1.在java定时任务中,使用 @Scheduled 注 ...
- java定时器、Spring定时器和Quartz定时器
当前java程序中能够实现定时的主要有三种方式,分别是:java定时器,spring定时器,quartz定时器. 下面依次讲讲他们的应用! java定时器的应用 其实java很早就有解决定时器任 ...
- java 定时器框架_java定时器
java定时器 什么是Java定时器? Java 定时器就是在给定的间隔时间执行自己的任务; Java实现定时器有以下几种: 通过Timer来实现定时任务 Timer 是来自 java.util.Ti ...
- java定时器停止_java 定时器中任务的启动、停止、再启动
package com.cvicse.ump.timer.service; import java.util.Date; import java.util.Timer; import com.cvic ...
- Springboot实现定时器quartz应用举例。
上一篇中我们说明了Springboot实现定时器quartz中文文档说明, 在开写主要内容前,我们来说明其他方式. 两者都是针对较简单的情况下.其一是,SpringBoot自带定时注解.其二是,定时线 ...
- 一文吃透JAVA定时器格式
JAVA 定时器时间格式 基本格式: [秒] [分] [小时] [日] [月] [周] [年] 序号 说明 是否必填 允许填写的值 允许使用的通配符 1 秒 是 0-59 , - ...
- java定时器返回future_java 定时器线程池(ScheduledThreadPoolExecutor)的实现
前言 定时器线程池提供了定时执行任务的能力,即可以延迟执行,可以周期性执行.但定时器线程池也还是线程池,最底层实现还是ThreadPoolExecutor,可以参考我的另外一篇文章多线程–精通Thre ...
- Java定时器Timer
Java定时器Timer 在JDK库中,Timer类主要负责计划任务的功能,也就是在指定的时开始执行某一个任务.Timer类的主要作用就是设置计划任务,但封装任务的类却是TimerTask类,执行计划 ...
最新文章
- 关于commonjs,AMD,CMD之间的异同
- 滴滴业务研发的精益实践
- 跨平台C++开发环境搭建——GNU+STL+Boost+wxWidget+OpenSceneGraph
- 乌班图linux分辨率不能调,ubuntu不能设置高分辨率问题的解决方法,
- python是什么和c++是什么区别_c++和python的区别有哪些
- 使用 MQTTnet 快速实现 MQTT 通信
- 5、mybatis中的映射器
- 转载:vb导出excel的方法
- 瑞星布局:安全软件的时尚模式
- ubuntu jdk 1.7 安装
- EH使用IPMI基础操作
- llustrator 教程,如何在 Illustrator 中对齐内容?
- 12-Python3 元组
- Anylogic问题-----模型运行中外部输入控制模型
- 使用Python连接谷歌邮箱发送邮件
- 电脑设置定时关机的5种方法
- vue中 this.$set的使用
- js技巧收集(200多个)——2
- ffmpeg实现视频实时动态时间水印
- android studio 倒计时,Android studio 学习3:实现倒计时、画板
热门文章
- 安全工具大全(持续补充中)
- printf 输出格式控制
- 如何计算一路话音消耗的带宽
- 浅谈Spring如何利用三个缓存Map解决循环依赖
- ram计算机中术语,计算机术语 RAM ROM
- 关于C和C++中的基本数据类型int、long、long long、float、double、char、string的大小及表示范围
- matlab在数学教学,Matlab在数学函数教学中的应用
- Java web 实战项目案例
- 百度编辑器 UEditor 使用方法 及 如何设置固定高度且带滚动条及 如何设置修改传值的 name 属性
- WinForm转WPF