crontriggerbeanQuartz时间表达式

crontriggerbean  时间:2021-06-06  阅读:()

spring定时器配置

有两种流行Spring定时器配置:Java的Timer类和OpenSymphony的Quartz。

1.Java Timer定时 首先继承java.util.TimerTask类实现run方法 import java.util.TimerTask; public class EmailReportTask extends TimerTask{ @Override public void run() { ... } } 在Spring定义 ... 配置Spring定时器 <bean id="scheduleReportTask" class=&.springframework.scheduling.timer.ScheduledTimerTask"> <property name="timerTask" ref="reportTimerTask" /> <property name="period"> <value>86400000value> property> bean> timerTask属性告诉ScheduledTimerTask运行哪个。

86400000代表24个小时 启动Spring定时器 Spring的TimerFactoryBean负责启动定时任务 <bean class=&.springframework.scheduling.timer.TimerFactoryBean"> <property name="scheduledTimerTasks"> <list><ref bean="scheduleReportTask"/>list> property> bean> scheduledTimerTasks里显示一个需要启动的定时器任务的列表。

可以通过设置delay属性延迟启动 <bean id="scheduleReportTask" class=&.springframework.scheduling.timer.ScheduledTimerTask"> <property name="timerTask" ref="reportTimerTask" /> <property name="period"> <value>86400000value> property> <property name="delay"> <value>3600000value> property> bean> 这个任务我们只能规定每隔24小时运行一次,无法精确到某时启动 2.Quartz定时器 首先继承QuartzJobBean类实现executeInternal方法 .quartz.JobExecutionContext; .quartz.JobExecutionException; .springframework.scheduling.quartz.QuartzJobBean; public class EmailReportJob extends QuartzJobBean{ protected void executeInternal(JobExecutionContext arg0) throws JobExecutionException { ... } } 在Spring中定义 <bean id="reportJob" class=&.springframework.scheduling.quartz.JobDetailBean"> <property name="jobClass"> <value>EmailReportJobvalue> property> <property name="jobDataAsMap"> <map> <entry key="courseService"> <ref bean="courseService"/> entry> map> property> bean> 在这里我们并没有直接声明一个EmailReportJob Bean,而是声明了一个JobDetailBean。

这个是Quartz的特点。

JobDetailBean是.quartz.JobDetail的子类,它要求通过jobClass属性来设置一个Job对象。

使用Quartz的JobDetail中的另一个特别之处是EmailReportJob的courseService属性是间接设置的。

JobDetail的jobDataAsMap属性接受一个Map,包括设置给jobClass的各种属性,当。

JobDetailBean实例化时,它会将courseService Bean注入到EmailReportJob 的courseService 属性中。

启动定时器 .quartz.Trigger类描述了何时及以怎样的频度运行一个Quartz工作。

Spring提供了两个触发器SimpleTriggerBean和CronTriggerBean。

SimpleTriggerBean与scheduledTimerTasks类似。

指定工作的执行频度,模仿scheduledTimerTasks配置 . <bean id="simpleReportTrigger" class=&.springframework.scheduling.quartz.SimpleTriggerBean"> <property name="jobDetail" ref="reprotJob" /> <property name="startDelay"> <value>360000value> property> <property name="repeatInterval"> <value>86400000value> property> bean> startDelay也是延迟1个小时启动 CronTriggerBean指定工作的准确运行时间 <bean id="cronReportTrigger" class=&.springframework.scheduling.quartz.CronTriggerBean"> <property name="jobDetail" ref="reprotJob" /> <property name="cronExpression"> <value>0 0 6 * * ?value> property> bean> 属性cronExpression告诉何时触发。

最神秘就是cron表达式: Linux系统的计划任务通常有cron来承担。

一个cron表达式有至少6个(也可能7个)有空格分隔的时间元素。

从左到右: 1.秒2.分3.小时4.月份中的日期(1-31)5.月份(1-12或JAN-DEC)6.星期中的日期(1-7或SUN-SAT)7.年份(1970-2099) 每个元素都显示的规定一个值(如6),一个区间(9-12),一个列表(9,11,13)或一个通配符(*)。

因为4和6这两个元素是互斥的,因此应该通过设置一个问号(?)来表明不想设置的那个字段,“/”如果值组合就表示重复次数(10/6表示每10秒重复6次)。

启动定时器 <bean class=&.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list><ref bean="cronReportTrigger"/>list> property> bean> triggers属性接受一组触发器。

请教,spring3.2+quartz2.1.6报如下错误如何解决

Spring官网有说明其已支持Quartz 2.x,但是需要将Spring升级到3.1以上。

由于Quartz 2.x修改了部分API,所以需要修改一下Quartz的配置。

大体来说很简单,如下: 1)升级Spring的jar包 2)升级Quartz的jar包 3)修改配置 将CronTriggerBean修改为CronTriggerFactoryBean 将JobDetailBean修改为JobDetailFactoryBean

Quartz时间表达式

使用SimpleTrigger 这个类,其中setStartTime()为设置开始时间,setEndTime()为设置结束时间,setRepeatlnterval()为每次的间隔时间,单位时毫秒,setRepeatCount()为循环的次数

hostkey俄罗斯、荷兰GPU显卡服务器/免费Windows Server

Hostkey.com成立于2007年的荷兰公司,主要运营服务器出租与托管,其次是VPS、域名、域名证书,各种软件授权等。hostkey当前运作荷兰阿姆斯特丹、俄罗斯莫斯科、美国纽约等数据中心。支持Paypal,信用卡,Webmoney,以及支付宝等付款方式。禁止VPN,代理,Tor,网络诈骗,儿童色情,Spam,网络扫描,俄罗斯色情,俄罗斯电影,俄罗斯MP3,俄罗斯Trackers,以及俄罗斯法...

UCloud:全球大促降价,云服务器全网最低价,1核1G快杰云服务器47元/年

ucloud:全球大促活动降价了!这次云服务器全网最低价,也算是让利用户了,UCloud商家调低了之前的促销活动价格,并且新增了1核1G内存配置快杰型云服务器,价格是47元/年(也可选2元首月),这是全网同配置最便宜的云服务器了!UCloud全球大促活动促销机型有快杰型云服务器和通用型云服务器,促销机房国内海外都有,覆盖全球20个城市,具体有北京、上海、广州、香港、 台北、日本东京、越南胡志明市、...

华圣云 HuaSaint-阿里云国际站一级分销商,只需一个邮箱即可注册国际账号,可代充值

简介华圣云 HuaSaint是阿里云国际版一级分销商(诚招募二级代理),专业为全球企业客户与个人开发者提供阿里云国际版开户注册、认证、充值等服务,通过HuaSaint开通阿里云国际版只需要一个邮箱,不需要PayPal信用卡,不需要买海外电话卡,绝对的零门槛,零风险官方网站:www.huasaint.com企业名:huaSaint Tech Limited阿里云国际版都有什么优势?阿里云国际版的产品...

crontriggerbean为你推荐
donghang东航的舱位分类?腾讯举报中心如何举报QQ号?视频技术短视频运营每天的工作是做什么?需要所学的技术都有什么方面?搜索引擎的概念7 什么是搜索引擎?如何在Internet上搜索图片和文字资料的?12种颜色水粉颜料调色过程十二种颜色模式识别算法机器学习和模式识别有什么区别?看教材,发现它们的算法都差不多一样啊。。。鄂n鄂N的车牌是那里的?qq网络硬盘怎么用qq网络硬盘微信智能机器人微信群机器人是怎么实现的网站建立需要多少钱创立网站要多少钱
免费网站域名注册 双线vps 域名备案流程 linuxapache虚拟主机 拜登买域名批特朗普 便宜域名 站群服务器 512av 发包服务器 qq数据库下载 台湾谷歌地址 架设服务器 双拼域名 炎黄盛世 hostker softbank邮箱 cdn加速原理 中国电信宽带测速网 33456 游戏服务器出租 更多